2011-12-26 3 views
7

su SQL Server 2008 R2, ho seguente codice T-SQL:SQL Server 2008 GET datetimeoffset in base alle impostazioni della macchina

SELECT CAST(GETDATE() AS DATETIMEOFFSET); 

Questo mi dà il risultato come di seguito:

2011-12 -26 10: 21: 13.7970000 +00: 00

Ma il risultato è quello che volevo essere. Dovrebbe essere questo:

2011-12-26 10: 21: 13,7970 mila +02: 00

Ecco della mia macchina Impostazioni data e ora:

enter image description here

La stessa cosa accade mentre inserisco un valore:

DECLARE @foo AS TABLE(
    fooDate DATETIMEOFFSET 
); 

INSERT @foo VALUES(GETDATE()); 

SELECT * FROM @foo; 

Questo mi dà lo stesso risultato errato (almeno sbagliato per le mie esigenze).

Cosa mi manca qui?

risposta

16

Prova questa funzione

SELECT SYSDATETIMEOFFSET(); 

GETDATE() ha alcuna informazione qualsiasi fuso orario

Problemi correlati