2017-06-13 3 views
0

Ich habe eine Tabelle ("Organisationen"), wo das genannte Feld ("ParentOrganisation") ist eine kurze Textart (alle Datensätze sind drei oder vier Zeichen AZ Strings. Jetzt gibt es eine andere Tabelle ("Rechnungen"), wo ein Feld ("Organisation") von einem Lookup-Assistenten auf "ParentOrganisation" in "Organisationen" getan wird, so habe ich eine Dropdown-Box zur Auswahl der Organisation. In den Eigenschaften für "Organisation" ist das Feld klassifiziert als Zahl Typ ... Warum?MS-Access - Datentyp Mismatch in einer Abfrage

Ich habe eine einfache Abfrage basierend auf der Tabelle "Rechnungen" erstellt, einschließlich der "Organisation" Feld. Jetzt, wenn ich die Kriterien in der Entwurfsansicht in der Abfrage angeben möchten = "PRT" oder eine andere Organisation, bekomme ich den Fehler: Datentyp stimmt nicht mit den Kriterien überein Ich denke, es hängt mit der Tatsache zusammen t Hat das Nachschlagefeld aus irgendeinem Grund als Nummer nicht als Text klassifiziert.

Bitte geben

+3

diesem Grund habe ich gesetzt Lookups Design in Tabelle nie - ich will Sehen Sie sich die tatsächlichen Werte an, nicht den Lookup-Alias. Ich baue Comboboxen auf Formularen. Das Feld "Organisation" speichert den numerischen ID-Wert aus der Tabelle Organisationen. – June7

Antwort

2

Dies ist die Art der Lookup fields.In Organisations.Organisation, nur die primäre ID der entsprechenden Organisation in ParentOrganisations gefunden wird gespeichert.

Um die Organizations-Tabelle pro Organisation zu filtern, müssen Sie der Tabelle ParentOrganisations beitreten.

Ihr Ergebnis SQL wird in etwa so aussehen (um es genauer, müssen Sie Ihren Code und Tabellenstrukturen teilen)

SELECT Organisations.Something 
FROM Organisations 
INNER JOIN ParentOrganisation ON ParentOrganisation.ID = Organisations.Organisation 
WHERE ParentOrganisation.Organisation = "PRT" 
Verwandte Themen