Konvertierung char zu Datetime

24/04/2008 - 19:39 von Andreas Jändl | Report spam
Hallo NG,

ich möchte im SQLS2k eine char-Spalte, in der Datums im Format jjjjmmtt
gespeichert sind, in eine Datetime-Spalte schreiben.
Meine Sp lautet so:
update s_trans_artikel SET dat_Kopf = convert(datetime, col006, 112)

Beim Ausführen kommt die Fehlermeldung: Fehler beim Konvertieren einer
Zeichenfolge zu Datetime

Wie muss die convert-Funktion richtig lauten?

Vielen Dank im voraus und herzliche Grüße,

Andreas
 

Lesen sie die antworten

#1 Elmar Boye
24/04/2008 - 19:51 | Warnen spam
Hallo Andreas,

Andreas Jàndl schrieb:
ich möchte im SQLS2k eine char-Spalte, in der Datums im Format jjjjmmtt
gespeichert sind, in eine Datetime-Spalte schreiben.
Meine Sp lautet so:
update s_trans_artikel SET dat_Kopf = convert(datetime, col006, 112)

Beim Ausführen kommt die Fehlermeldung: Fehler beim Konvertieren einer
Zeichenfolge zu Datetime

Wie muss die convert-Funktion richtig lauten?



Die CONVERT Funktion dürfte richtig sein, nur ist vermutlich
der Inhalt nicht immer im richtigen Format, d. h. kein gültiges Datum.

Du solltest einen zusàtzlicher Test hinzufügen:
update s_trans_artikel SET dat_Kopf = convert(datetime, col006, 112)
WHERE ISDATE(col006) = 1

um die fehlerhaften Zeilen zu finden
SELECT * FROM s_trans_artikel WHERE ISDATE(datum) = 0

ISDATE erlaubt allerdings auch andere Formate, so dass Du
ggf. die Anweisung erweitern mußt.

Gruß Elmar

Ähnliche fragen