Entwickler-Ecke

Datenbanken - Abfrage geht in Access in Delphi aber nicht


Bronstein - Fr 13.10.06 13:32
Titel: Abfrage geht in Access in Delphi aber nicht
Hat jemand eine Ahnung, warum diese SQL_Anweisung in Access funktioniert, in Delphi aber nicht:


SQL-Anweisung
1:
SELECT DateDiff('n',Von,Bis) AS Stoerzeit FROM tblMaschine INNER JOIN tblLogbuch ON tblMaschine.M_ID = tblLogbuch.M_ID WHERE tblLogbuch.Von>=#10/9/2006 00:00:00 AM# And tblLogbuch.Von>=#10/9/2006 00:00:00 AM# And tblLogbuch.Von<=#10/9/2006 00:00:00 AM# AND tblMaschine.MaschinenName Like'PMJ2*'                    



Das *-Zeichen habe ich in Delphi durch % erstetzt.

Ich bekomme folgende Fehlermeldung:
Im Projekt MDE.exe ist eine Exception der Klasse EOleException aufgetreten. Meldung: 'Ein Parameterobjekt ist nicht ordnungsgemäß definiert. Inkonsistente oder unvollständige Informationen wurden angegeben'. Prozeß wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.

Moderiert von user profile iconraziel: I- durch SQL-Tags ersetzt


Bronstein - Fr 13.10.06 14:21

Wei jetzt wo der Fehler ist. Lasse ich die Uhrzeit weg, funktioniert es. Was ist aber falsch bei meiner Uhtrzeit.

Hier die SQL-Anweisung ohne Uhrzeit, die funktioniert:


SQL-Anweisung
1:
SELECT DateDiff('n',Von,Bis) AS Stoerzeit FROM tblMaschine INNER JOIN tblLogbuch ON tblMaschine.M_ID = tblLogbuch.M_ID WHERE tblLogbuch.Von>=#10/9/2006# And tblLogbuch.Von>=#10/9/2006# And tblLogbuch.Von<=#10/9/2006# AND tblMaschine.MaschinenName Like 'PMJ2%'                    


Moderiert von user profile iconraziel: I- durch SQL-Tags ersetzt


iKilledKenny - Fr 13.10.06 14:24

kann es sein das der doppelpunkt das zeichen für einen parameter ist?
meine mich an sowas erinnern zu können...

edit: demzufolge müsste deine query mit ParamCheck := False funktionieren??!!

grüße
alex


Bronstein - Fr 13.10.06 14:31

Super, danke genau das wars.