![]() |
Datenbank: Mysql • Version: 4.1 • Zugriff über: MYDAC
Deutsche Datum nach Englisches Datum konvertieren?
Hallo. Gibt Es eine Funktion die mir das Deutsche Datum in Englisches Datum formatiert?
Bei MYSQL kann ich nur mit Englieschen Datum die Abfragen starten? momentan gehe ich so vor das ich Jahr, Monat, Tag auslese und in der Richtige Reihenfolge setze incl. '-'. ..mich würde Interessieren ob es vielleicht eine Funktion gibt, die schon in D7 Pro integriert ist.. Danke |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Schau mal in der Delphi-Hilfe nach 'FormatDateTime'
|
Re: Deutsche Datum nach Englisches Datum konvertieren?
Delphi-Quellcode:
:P
Function EnglischesDatum(Datum:TDateTime):String;
begin Result := FormatDateTime('yyyy-mm-dd', Datum); end; |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Zitat:
|
Re: Deutsche Datum nach Englisches Datum konvertieren?
Wie Joachim schon sagte:
SQL-Code:
und dann
Select * from Test where Datumsfeld = :datum
Delphi-Quellcode:
Wenn Du aber unbedingt das Datum konvertieren willst:
Query.ParamByName('datum').AsDateTime := now;
Delphi-Quellcode:
Eine Liste aller gültigen LCIDs:
procedure TForm1.TestButtonClick(Sender: TObject);
const LCID_ENUS : integer = 1033; var dtDatum : TDate; FormatSettings : TFormatSettings; begin dtDatum := date; Sysutils.GetLocaleFormatSettings(LCID_ENUS, FormatSettings); ShowMessage(DateToStr(dtDatum, FormatSettings)); end; ![]() |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Das mit Param muss ich mir anschauen..
bzw.würde das auch mit Param funktionieren?
Delphi-Quellcode:
with tabelle do
begin Close; sql.text := 'SELECT * FROM TABELLE WHERE DATUM = '+QuotedStr(EnglischesDatum(StrToDateTime(ed_Datumfeld.text)); Open; end; aber diese Funktion würde doch auch funktionieren?
Delphi-Quellcode:
Function EnglischesDatum(Datum:TDateTime):String;
begin Result := FormatDateTime('yyyy-mm-dd', Datum); end; |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Ja, mit Params würde das so aussehen:
Delphi-Quellcode:
Nur sollte die Eingabe in dem Datumsfeld vorher geprüft werden ob es ein gültiges Datum darstellt bzw. Du verwendest gleich eine entsprechende Eingabekomponente die von sich aus nur gültige Datumseingaben zuläßt.
with tabelle do
begin Close; sql.text := 'SELECT * FROM TABELLE WHERE DATUM = :datumswert'; ParamByName('datumswert').AsDateTime := StrToDateTime(ed_Datumfeld.text); Open; end; Das mit dem FormatDateTime klappt natürlich auch. Aber wenn man mit Datums- und Zeitwerten arbeitet, sollte man auch möglichst die dafür vorgesehenen Datentypen verwenden. Das macht dann auch Berechnungen viel einfacher und man spart sich jede Menge Umwandlungen. |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Zitat:
|
Re: Deutsche Datum nach Englisches Datum konvertieren?
Dir ist aber schon aufgefallen, dass so die Funktion EnglischesDatum() nicht benötigt wird :stupid:
[edit] Und QuotedStr() auch nicht [/edit] |
Re: Deutsche Datum nach Englisches Datum konvertieren?
:P ..das ist das..
|
Re: Deutsche Datum nach Englisches Datum konvertieren?
Zitat:
nur mal so am Rande. mySQL benutzt das deutsche Datumsformat. Aber die wenigsten Leute haben es auf ihrem Rechner eingestellt. |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Zitat:
|
Re: Deutsche Datum nach Englisches Datum konvertieren?
Hai Karstadt,
warum machst Du es eigentlich nicht mit Parametern? Es ist ja nicht ![]() |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Also ich denke da muss ich ihn mal in Schutz nehmen. Das scheint mir ein typischer Fall von Newbie-Mißbrauch einer Firma zu sein. So fangen EDV-Katastrophen an. Nichts wird geplant, alles wird ad hoc programmiert und beim Coden werden dann die konzeptionellen Problem egleich mit gelöst (oder es versucht, denn es gibt ja gar kein Konzept).
Dies ist nur mein ganz persönlicher Eindruck, entstanden aus der Verfolgung von Karstadt's Postings der letzten Zeit. Ich denk es würde sich lohnen mal den Gesamtumfang des Projektes zu kennen und dann zu ermitteln was man dafür braucht. Und das ganze muß natürlich auch auf einer guten programmtechnischen Basis stehen. Wenn man nicht unendlich Zeit hat, kann man sich nicht noch im Projekt das Programmieren beibringen. |
Re: Deutsche Datum nach Englisches Datum konvertieren?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:58 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