Zitat Zitat von jjagi
Trotz der '-' sehe ich auf derAS400 das Datum im Format 05/12/31...

Da scheint irgendeine Einstellung mein
Wunschformat zu "overrulen" ?!?
Das Datum ist auf in der DB2 UDB for iSeries immer als 4Byte-Binär-Wert hinterlegt und stellt die rechnerische Anzahl an Tagen seit dem 01.01.0001. (Excel seinerseits rechnet in Sekunden und setzt auf dem 1.1.1900 auf)

Um den Binär-Wert sichtbar zu machen, kannst Du die skalare Funktion HEX verwenden:

PHP-Code:
Select Hex(MyDate), MyDate from MyTable 
Datums-Formate sind dazu da, um den Binär-Wert lesbar zu machen. Auf der iSeries erkennt SQL selber die folgenden alphanumerische Darstellungen als gültiges Datum:
JJJJ-MM-TT (= *ISO), TT.MM.JJJJ (=*EUR) und MM/TT/JJJJ (= *USA)

Wenn Du also in einer Where-Anweisung MyDate = '01.07.2006' angibst, wird diese Darstellung in den entsprechenden Binär-Wert konvertiert.

In welchem Datums-Format Du das Datum angezeigt bekommst, hängt davon ab, was Du eingestellt hast. Der Default-Wert für das Datum steht i.d.R auf *JOB.
Wenn Du mit iteraktivem SQL arbeitest, kannst Du das Datums-Format wie folgt ändern:
F13 --> Auswahl 1. --> DATFMT

Wenn Du über iSeries Navigator arbeitest, kannst Du das Datums-Format unter JDBC-Setup einstellen.

Für SQL-Programmierung kann das Datums-Format über ein entsprechenden SET OPTION-Statement eingestellt werden.

Birgitta