Dim db_pw_code As DAO.Database
Dim dy_pw_code As DAO.Recordset
Set db_pw_code = CurrentDb
Dim db_anmeldung As DAO.Database
Dim dy_anmeldung As DAO.Recordset
Set db_anmeldung = CurrentDb
Set dy_anmeldung = db_anmeldung.OpenRecordset(„Select * From [Benutzer] Where [Kennung]= '“ & qnummer & „’“)
If IsNull(dy_anmeldung!Vorname) Then GoTo keinZugang
var_Ident = dy_anmeldung!Ident
Set dy_pw_code = db_pw_code.OpenRecordset(„Select * From [Code] Where ([Ident]= '“ & var_Ident & „’)“)
Bei Ausführung der „Set dy_pw_code =…“
Bekomme ich den Fehler
Laufzeitfehler 3464
Datentypen in Kriterienausdruck unverträglich
angezeigt.
mit „Like“ anstelle von „=“ klappt es.
Kann mir jemand sagen warum? Besonders warum klappt es bei der ersten Abfrage und nicht bei der zweiten.
Dim db_pw_code As DAO.Database
Dim dy_pw_code As DAO.Recordset
Set db_pw_code = CurrentDb
Dim db_anmeldung As DAO.Database
Dim dy_anmeldung As DAO.Recordset
Set db_anmeldung = CurrentDb
Set dy_anmeldung = db_anmeldung.OpenRecordset(„Select * From
[Benutzer] Where [Kennung]= '“ & qnummer & „’“)
If IsNull(dy_anmeldung!Vorname) Then GoTo keinZugang
var_Ident = dy_anmeldung!Ident
Set dy_pw_code = db_pw_code.OpenRecordset("Select * From
[Code] Where ([Ident]= ‚" & var_Ident & "‘)")
Bei Ausführung der „Set dy_pw_code =…“
Bekomme ich den Fehler
Laufzeitfehler 3464
Datentypen in Kriterienausdruck unverträglich
angezeigt.
mit „Like“ anstelle von „=“ klappt es.
Kann mir jemand sagen warum? Besonders warum klappt es bei der
ersten Abfrage und nicht bei der zweiten.
Hallo,
vermutlich ist [Ident] in der Tabelle vom Datentyp Zahl,Long.
Demzufolge sollte es so heißen:
…Where ([Ident]= " & var_Ident & ") …
Würde empfehlen, auch Variablen passend zu deklarieren (sieht man an dem Code-Schnippsel nicht) und nur in Ausnahmefällen als Datentyp Variant
stimmen die Datentypen von Ident und var_Ident überein?
Gruß Ralf
[Ident] ist Datentyp Long Integer
Ich habe var_Ident schon als Long, Double, und Variant deklariert aber jedesmal mit demselben Ergebnis. Inzwischen habe ich herausgefunden, dass „=“ Grundsätzlich mit den Datentypen Memo und Text funktuioniert, nicht jedoch mit Datums oder Zahlentypen.
Wirklich weitergekommen bin ich damit aber nicht.
Wenn die Like Anweisung nicht soviel langsamer wäre (ich führe ca. 30 Abfragen aus) hätte ich damit auch kein Problem.
Mal sehen, vielleicht findet sich ja noch eine Lösung.