"Datentypen in Kriterienausdruck unverträglich"
-
Moin!
Ich bekomme folgende Fehlermeldung und kann mit der nicht viel anfangen, was wo falsch sein soll...
"Datentypen in Kriterienausdruck unverträglich"
Ich nehme mal an, dass der Fehler an folgender Stelle auftritt:
CString help = m_Montag.Format("%d.%m.%y"); tm.Open(AFX_DAO_USE_DEFAULT_TYPE, "SELECT * FROM Tabelle WHERE User_Name = '" + m_User_Name + "' AND Projekt_ID = '" + m_Projekt + "' AND Phasen_Beschreibung = '" + m_Projektphase + "' AND Datum = '" + help + "'",0);Ich hab da schon etwas rumprobiert und bisher immer diesen Fehler bekommen. Ich denke, dass das Datum der Auslöser für das Ganze ist.
m_Montag ist vom Typ COleDateTime. Wenn ich das anstatt help eingebe, passiert das gleiche (plus Warnung, wegen möglichem Datenverlust). Das Feld "Datum" in der Datenbank ist vom Typ Datum/Zeit.Hat irgendjemand von Euch nen Tipp, wie ich das hin bekomme?
Danke schonmal!
-
Hallo,
um was für eine Datenbank geht es? Ich nehme ACCESS an, dann kann man, so glaube ich, ein Datum als Datums-Literal in "#"-Zeichen angeben (Datum muß in EN-US-Format übergeben werden):
CString help = m_Montag.Format("#%m/%d/%y#"); CString strSql = "SELECT * FROM Tabelle WHERE User_Name = '" + m_User_Name + "' AND Projekt_ID = '" + m_Projekt + "' AND Phasen_Beschreibung = '" + m_Projektphase + "' AND Datum = " + help; tm.Open(AFX_DAO_USE_DEFAULT_TYPE, strSql, 0);MfG
-
Ja, es geht um eine Access97-Datenbank. Hatte ich vergessen anzugeben. Aber es funktioniert auch so nicht. Es kommt weiterhin dieser Fehler!
Langsam bin ich echt am verzweifeln...
-
dann gib doch mal die exakte Feldbeschreibung der Datenbankfelder an (bis auf Datum, das ist ja ein Date/Time-Wert), vielleicht ist es nicht das Datum, lasse doch testweise einmal das "AND Datum = .." aus dem SQL-String weg, dann weißt du sicher, ob es das Datum ist, wenn der Fehler dann nicht mehr kommt.
MfG