SQL Server 2008 ПОЛУЧИТЬ DATETIMEOFFSET в соответствии с настройками компьютера - PullRequest
9 голосов
/ 26 декабря 2011

В SQL Server 2008 R2 у меня есть следующий код T-SQL:

SELECT CAST(GETDATE() AS DATETIMEOFFSET);

Это дает мне следующий результат:

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

Но результат - то, что я хотел быть.Это должно быть так:

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

Вот мой аппарат Настройки даты и времени :

enter image description here

При вводе значения происходит то же самое:

DECLARE @foo AS TABLE(
    fooDate DATETIMEOFFSET
);

INSERT @foo VALUES(GETDATE());

SELECT * FROM @foo;

Это приводит к тому же неверному результату(по крайней мере, неправильно для моих нужд).

Что мне здесь не хватает?

1 Ответ

20 голосов
/ 26 декабря 2011

Попробуйте это

SELECT SYSDATETIMEOFFSET();

GETDATE() функция не имеет никакой информации о часовом поясе

...