![]() |
AW: To_Date wird nicht erkannt
Zitat:
|
AW: To_Date wird nicht erkannt
Zitat:
|
AW: To_Date wird nicht erkannt
Da ist Einiges überflüssig, wieso die vielen Umwandlungen? Wenn das ein Date-Feld ist dann doch wohl so:
Delphi-Quellcode:
Aber da stellt sich mir auch die Frage, warum mit Stringdatum gearbeitet wird (also die var Datum)?
Query.Close;
Query.Sql.Clear; Query.Sql.Add('SELECT *'); Query.Sql.Add('FROM DATA_Test'); Query.Sql.Add('WHERE DATUM = :Datum'); Query.Params.ParamByName('DATUM').AsDateTime := StrToDate(Datum); Query.open; |
AW: To_Date wird nicht erkannt
Genau darauf zielte meine Frage ab. Ein Datum ist ein Datum, da muss man doch nichts in String konvertieren und andersherum.
|
AW: To_Date wird nicht erkannt
Er scheitert ja an der Umwandlung von dem Datum ("2011-10-05" Datum im Code ist eine String-Variable) in einen Date-Wert.
Hier sollte man der Funktion ![]() |
AW: To_Date wird nicht erkannt
Es ist nur eine Vermutung, aber ich glaube, die Variable ist eher aus Verlegenheit als String deklariert. Sofern die Daten aus der DB ausgelesen werden, kann man sie doch auch gleich als TDate verarbeiten.
|
AW: To_Date wird nicht erkannt
ich denke es klemmt an der Hochkommateritis:
Code:
wird von Oracle nicht akzeptiert, es müsste so lauten:
WHERE DATUM = TO_Date( :Datum, "YYYY-MM-DD")
Code:
oder legt die BDE hier noch einen Vereinfachungsschleier drüber?
WHERE DATUM = TO_Date( :Datum, 'YYYY-MM-DD')
Gruß K-H |
AW: To_Date wird nicht erkannt
Ich denke mal, dass der Fehler nun behoben ist. Nur leider ist mir aufgefallen, dass ich viel früher schon einen habe. Und zwar beim speichern der Daten.
Vielleicht könnr ihr ja mal rüber sehen!
Delphi-Quellcode:
Die Daten werden nicht in die neue Tabelle übertragen. Mit Toad for Oracle funktioniert die Abfrage tadellos.
Query.Close;
Query.Sql.Clear; Query.Sql.Add('CREATE TABLE '+Tabelle+' ( Nummer real, IDNR real, IDNR2 real) '); Database.StartTransaction; try Query.ExecSQL; Database.Commit; except on E: Exception do begin Database.Rollback; ShowMessage(E.Message); end; end; Query.Close; Query.Sql.Clear; Query.Sql.Add('INSERT INTO '+Tabelle+' ( Nummer, IDNR, IDNR2) '); Query.Sql.Add('SELECT a.TEST1, a.TEST2, b.TEST2'); Query.Sql.Add('FROM DATA_TEST2 a, DATA_TEST2 b '); Query.Sql.Add('WHERE a.IDNR= 4 '); Query.Sql.Add('AND b.IDNR= 5'); Query.Sql.Add('AND a.IDNR LIKE "%'+Variable+'" '); Query.Sql.Add('AND a.IDNR2 = b.IDNR'); Database.StartTransaction; try Query.ExecSQL; Database.Commit; except on E: Exception do begin Database.Rollback; ShowMessage(E.Message); end; end; Query.Close; Query.SQL.Clear; Query.SQL.Add('SELECT * FROM '+Tabelle+''); Query.Open; |
AW: To_Date wird nicht erkannt
Delphi-Quellcode:
Query.Close; Query.Sql.Clear; Query.Sql.Add('CREATE TABLE '+Tabelle+' ' ); Query.Sql.Add('SELECT a.TEST1 Nummer, a.TEST2 IDNR, b.TEST2 IDNR2 '); Query.Sql.Add('FROM DATA_TEST2 a, DATA_TEST2 b '); Query.Sql.Add('WHERE a.IDNR= 4 '); Query.Sql.Add('AND b.IDNR= 5'); Query.Sql.Add('AND a.IDNR LIKE "%'+Variable+'" '); Query.Sql.Add('AND a.IDNR2 = b.IDNR'); Database.StartTransaction; try Query.ExecSQL; Database.Commit; except on E: Exception do begin Database.Rollback; ShowMessage(E.Message); end; end; Query.Close; Query.SQL.Clear; Query.SQL.Add('SELECT * FROM '+Tabelle+''); Query.Open; |
AW: To_Date wird nicht erkannt
Funktioniert leider auch nicht :(
Die tabelle ist halt einfach leer.. Bekomme auch keine Fehlermeldung oder so.. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz