[Fehler] Datentypen in Kriterienausdruck unverträglich

LordDeath

Erfahrenes Mitglied
[Fehler]

Hi

Ich will per sql was aus einer Access DB auslesen aber da bringt er mir sehr oft den Laufzeitehler "Datentypen in Kriterienausdruck unverträglich" .

Kann mir jemand sagen was der Fehler genau bedeutet ?

DarkGreetinx LordDeath
 
Hi.

Bitte verwende aussagekräftige Threadtitel, habe diesen hier editiert.

Zu der Fehlermeldung.

In einem SQL Befehl müssen Zeichenketten in einfache Anführungszeichen gesetzt werde, Zahlenwerte jedoch nicht. Datumstypen auch in einfache Anführungszeichen oder zwischen Rauten.

Angenommen du hast folgende einfache Tabelle.

Code:
--------------------------
| Spaltenname | Datentyp |
--------------------------
| Name        |  String  |
| Alter       |  Int     |
--------------------------

Ein Insert-Befehl würde so aussehen:

Code:
string sql = "INSERT INTO tblNetteModeratoren (Name, Alter) VALUES('Alex' 19)";

Wie du siehst, der Name ist in den einfachen Anfürhungszeichen, das Alter nicht.

MfG,
Alex
 
Ich mach da ein SELECT aber die Hochkommas fehlen nicht !

die variablen host + username sind strings, daze ist ein DateTime() !

Die Felder Host und UserID sind in Access als Text definiert und Datum ist als Datum/Zeit definiert

sel = "SELECT * FROM Logins WHERE Host = '" + host + "' AND Datum = '" + daze.ToString() + "' AND UserID = '" + username + "'";


Hast du eventuell noch ne Idee worans liegen kann?

DarkGreetinx LordDeath
 
Du könntest einerseits noch probieren das Datum zwischen 2 Rauten (#) zu setzen, und/oder das Datumsformat näher bestimmen.

z.b.
Code:
sel = "SELECT * FROM Logins WHERE Host = '" + host + "' AND Datum = '" + daze.ToString("mm/dd/yyyy") + "' AND UserID = '" + username + "'";
 

Neue Beiträge

Zurück