Datums-Konvertierungen

31/07/2009 - 11:12 von Lutz Uhlmann | Report spam
Hallo NG!

Ich bekomme in einer Tabelle Zeitstempel im Format "2009-05-13 14:21:25.247" geliefert.

Diese konvertiere ich in einer Abfrage mittels CONVERT(DATETIME, [Zeitstempel], 121) in einen
DATETIME-Typ.
Ich kann eigentlich davon ausgehen, daß die meisten Textfelder korrekt sind. Dann funktioniert auch
die Konvertierung.

Sollte aber ein Zeitstempel ein ungültiges Datum enthalten, schlàgt die komplette Abfrage fehl -
dies ist von mir aber nicht gewünscht. Ich hàtte in so einem Fall gerne den Rückgabe-Wert NULL

Wie müßte eine Funktion aussehen, die so etwas hergibt???

Folgende Funktion funktioniert leider wegen TRY CATCH nicht

CREATE FUNCTION dbo.funcStringToDate
(
@sDateString NVARCHAR(50),
@nDateFormat INT
)
RETURNS DATETIME
AS
BEGIN
DECLARE @dtRet DATETIME

SET @dtRet = NULL;

BEGIN TRY
SET @dtRet = CONVERT(DATETIME, @sDateString, @nDateFormat)
END TRY
BEGIN CATCH
SET @dtRet = NULL;
END CATCH

RETURN @dtRet
END

Mit ISDATE habe ich aber wieder das Problem, daß ich wohl vom Format des Datums abhàngig???

Lutz

 

Lesen sie die antworten

#1 Christa Kurschat
31/07/2009 - 11:44 | Warnen spam
Hallo Lutz,

"Lutz Uhlmann" schrieb im Newsbeitrag
news:OG$
Hallo NG!

Ich bekomme in einer Tabelle Zeitstempel im Format "2009-05-13
14:21:25.247" geliefert.

Diese konvertiere ich in einer Abfrage mittels CONVERT(DATETIME,
[Zeitstempel], 121) in einen DATETIME-Typ.
Ich kann eigentlich davon ausgehen, daß die meisten Textfelder korrekt
sind. Dann funktioniert auch die Konvertierung.

Sollte aber ein Zeitstempel ein ungültiges Datum enthalten, schlàgt die
komplette Abfrage fehl - dies ist von mir aber nicht gewünscht. Ich hàtte
in so einem Fall gerne den Rückgabe-Wert NULL



...

Mit ISDATE habe ich aber wieder das Problem, daß ich wohl vom Format des
Datums abhàngig???




ich habe es bisher immer mit isdate gemacht.
Soweit ich weiß, ist die Funktion unabhàngig von Dateformat. Lt. der Hilfe
werden die untershiedlichsten Formate erkannt.

Gruß
Christa
Access-FAQ: http://www.donkarl.com
SQL-Server-FAQ: www.sqlfaq.de
InsideSql: www.insidesql.org

Ähnliche fragen