AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tutorial - Query

Ein Thema von davar · begonnen am 23. Okt 2005 · letzter Beitrag vom 3. Nov 2005
 
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.259 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Tutorial - Query

  Alt 3. Nov 2005, 06:40
Zitat von x000x:
... Gibt es bei TQuery nicht auch AsDateTime? dann brauchst du dein Datum nicht noch in einen String umwandeln...
Hai davar,
wie x000x richtig anmerkte solltest Du zum setzen von Parametern immer versuchen den richtigen Datentyp zu verwenden.
Dies macht es nicht nur leichter für dich sondern Du hast durch Typumwandlungen auch immer eine unnötige Fehlerquelle erzeugt.

Dein Code könnte dann zum Beispiel so aussehen:
Delphi-Quellcode:
procedure TForm1.btn_SqlTestClick(Sender: TObject);
begin
  with DBs.QHTrHin do
  begin
    Close; // Verbindung schliessen
    ParamCheck := True; // Parameter benutzen
    SQL.Text := 'SELECT * FROM DBs\Flugdate WHERE DatumHin = :datum'; // SQL setzen
    Params.Items[0].AsDate := date; // Ersten Parameter setzen
    Open; // Abfrage durchführen
    ShowMessage(FieldByName('Datum').AsString); // Feld "Datum" als String
    Close; // Und nach dem arbeiten wieder schliessen
  end;
end;
Gerade bei Datumsfeldern kannst Du dir bei SQL-Abfragen ganz schnell ein Eigentor schiessen.
Jede Datenbank erwartet ein Datum, wenn es als String in dem Query steht, in dem vom DBMS vorgegebenen Format.
Bei mySQL wäre das: YYYY-MM-DD
Bei MSSQL ist es das in den Regionaloptionen des Rechners auf dem der Server läuft eingestellen Format
usw.
usw.

Datum solltest Du alles daran setzen ein Datum immer als TDate bzw. TDateTime an die DB zu senden.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
 


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 04:32 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