Michael Nagler: DATE-Formate

Hi,

ich habe mir gerade ein JavaScript zusammengepfuscht, welches DATEs aus einer DB2 lokal formatiert (soll heissen: 99-11-26 -> 11. November 1999.

Frage: Ist das DATE-Format bei allen DBs gleich? (jj-mm-dd), oder laeuft mein Script evtl. nicht mit Informix, MySQL, ... (das soll es naemlich spaeter tun)

Antwort nur nötig, wenn nicht.

Gruss
Michael

PS: Noch ne Frage: Wofuer steht FA und FI? F-orum?, A-nwender?, I-nsider? - was soll das immer mit diesen Abkuerzungen...

  1. Hi,

    ich habe mir gerade ein JavaScript zusammengepfuscht, welches DATEs aus einer DB2 lokal formatiert (soll heissen: 99-11-26 -> 11. November 1999.

    Frage: Ist das DATE-Format bei allen DBs gleich? (jj-mm-dd), oder laeuft mein Script evtl. nicht mit Informix, MySQL, ... (das soll es naemlich spaeter tun)

    Hallo,

    die Datumsformate der verschiedenen DB's sind zwar intern ähnlich, allerdings kannst Du nicht davon ausgehen, daß jede DB Dein Datum im Format 99-11-26 ausgibt. Access im deutschen gibt Dir z.B. 26.11.99 zurück, Oracle 7.3.4 -> 26-NOV-99 (wenn das Standarddatum auf dem DB-Server so eingestellt ist), ...
    Es gibt allerdings die Möglichkeit, die Datumswerte zu konvertieren (gleich im SQL-String), z.B. Oracle -> TO_CHAR(Datumsfeld, 'DD.MM.RRRR')

    Aber das wiederum ist abhängig von der DB. Aber wenigstens stimmt dann der Wert, der an Dein Skript übergeben wird.

    Tschau, Stefan

    P.S.: Achte auch auf die Ländereinstellungen

  2. Frage: Ist das DATE-Format bei allen DBs gleich? (jj-mm-dd), oder laeuft mein Script evtl. nicht mit Informix, MySQL, ... (das soll es naemlich spaeter tun)

    Das interne Format einer Variable vom Typ "date" solltest Du überhaupt nicht verwenden.

    Eine vernünftige Datenbank (Oracle) stellt Dir Funktionen zur Konvertierung zur Verfügung (to_date, to_char, jeweils mit entsprechend komplexen Format-Masken).
    Die haben natürlich irgendeinen Defaultwert, wenn man das Format nicht explizit angibt ...