Announcement

Collapse
No announcement yet.

Datumsformat konfus im T-SQL Cursor

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Datumsformat konfus im T-SQL Cursor

    Hallo,
    ich habe ein kleines Problem? Mein SQL Server 2005 ist auf "Deutsch" eingestellt und das Standarddatumsformat ist auch "dmy".

    In meiner Tabelle steht das Datum auch im Format "tt.mm.yyyy" drin. Wenn ich setzt aber mit SQL dieses Datum abfrage, dann wird es mir in der Form "Monat Tag Jahr" also z.B. Dez 10 2008 für "12.10.2008" zurückgegeben und somit funktionieren auch nicht Datumsfunktionen wie z.B. DateDiff, weil er mit einem Fehler abbricht. Weil dann 13.10.2008 nicht eingelesen werden kann.

    Was muß ich tun, damit mit FETCH das Datum im richtigen Format ausgelesen wird? Hat jemand eine Idee?..immer diese Datumsprobleme :-)

  • #2
    In der Datenbank werden Datetime-Werte immer als Float abgespeichert, haben also kein Datumsformat. Das wird erst durch das Anzeigeprogramm bestimmt.
    Will man es zB. in einem SQL-Script für die Ausgabe auf String umwandeln, dann nimmt man dazu CONVERT() und kann in dieser Funktion über den 3. Parameter das Datumsformat vorgeben.
    Umgekehrt hat es sich bewährt, bei Datumswerten für Parameter von Stored Procs im Aufrufer entweder den parameterisierten Aufruf zu verwenden oder das Datum in Form JJJJMMTT zu übergeben, das funktioniert auch immer.

    bye,
    Helmut

    Comment


    • #3
      Danke...lese jetzt einen nvarchar ein und convertiere zur Datumsberechnung in datetime und damit funktioniert es.

      vg

      Comment

      Working...
      X