AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi To_Date wird nicht erkannt
Thema durchsuchen
Ansicht
Themen-Optionen

To_Date wird nicht erkannt

Ein Thema von fanavity · begonnen am 5. Okt 2011 · letzter Beitrag vom 5. Okt 2011
Antwort Antwort
fanavity

Registriert seit: 2. Sep 2011
65 Beiträge
 
#1

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 10:47
Danke für die Antwort..

Leider muss ich vorrerst mit dieser Lösung weiter arbeiten.. Also muss ich sehen wie ich das Problem löse.

Auf der DB ist das Datum so abgespeichert: DD.MM.YYYY
Wenn ich mein Datum genauso Formatiere und übergeben will, bekomme ich keine Fehlermeldung. Aber auch keine Ausgabe.

Wenn ich den Parameter in Anführungszeichen setzte:

Delphi-Quellcode:
     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').Value := StrToDate(Datum);
     Query.open;
Dann sagt er mir, dass es den Parameter Datum nicht gibt.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#2

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 10:49
Welchen Datentyp hat das Datum eigentlich in der DB? Date oder String?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
fanavity

Registriert seit: 2. Sep 2011
65 Beiträge
 
#3

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 10:51
Welchen Datentyp hat das Datum eigentlich in der DB? Date oder String?
Das Feld Datum ist vom Typ Date
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 11:01
Da ist Einiges überflüssig, wieso die vielen Umwandlungen? Wenn das ein Date-Feld ist dann doch wohl so:
Delphi-Quellcode:
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;
Aber da stellt sich mir auch die Frage, warum mit Stringdatum gearbeitet wird (also die var Datum)?
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#5

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 11:02
Genau darauf zielte meine Frage ab. Ein Datum ist ein Datum, da muss man doch nichts in String konvertieren und andersherum.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 11:06
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 Delphi-Referenz durchsuchenStrToDate entsprechend angepasste FormatSettings mitgeben!
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#7

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 11:15
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 11:20
ich denke es klemmt an der Hochkommateritis:
Code:
WHERE DATUM = TO_Date( :Datum, "YYYY-MM-DD")
wird von Oracle nicht akzeptiert, es müsste so lauten:
Code:
WHERE DATUM = TO_Date( :Datum, 'YYYY-MM-DD')
oder legt die BDE hier noch einen Vereinfachungsschleier drüber?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.213 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 10:51
Auf der DB ist das Datum so abgespeichert: DD.MM.YYYY
Dein erster Versuch geht davon aus das das Feld als Datumsfeld definiert ist. Dann wird das DB-Interne Format für die Speicherung verwendet und das Format "DD.MM.YYYY" ist nur ein (konfigurierbares) Anzeigeformat.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
fanavity

Registriert seit: 2. Sep 2011
65 Beiträge
 
#10

AW: To_Date wird nicht erkannt

  Alt 5. Okt 2011, 10:54
Auf der DB ist das Datum so abgespeichert: DD.MM.YYYY
Dein erster Versuch geht davon aus das das Feld als Datumsfeld definiert ist. Dann wird das DB-Interne Format für die Speicherung verwendet und das Format "DD.MM.YYYY" ist nur ein (konfigurierbares) Anzeigeformat.
Und was bedeutet das dann für mich? Verstehe deine Aussage nicht so ganz. Sorry
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:11 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 by Thomas Breitkreuz