Если это - бизнес-веб-сайт (или серьезный сайт, где важно, чтобы это на самом деле работало над IE), то не следуйте дешевым маршрутом - вкладывают капитал в машину Windows или два. Ваши клиенты поблагодарят Вас.
Иначе, виртуализировать.
SQL Server 2008 имеет тип, называемый datetimeoffset
. Это действительно полезно для такого рода вещей.
http://msdn.microsoft.com/en-us/library/bb630289.aspx
Затем вы можете использовать функцию SWITCHOFFSET
, чтобы переместить его из одного часового пояса в другой, но при этом сохраняется то же значение UTC.
http://msdn.microsoft.com/en-us/library/bb677244.aspx
Роб
Вы можете использовать функцию GETUTCDATE (), чтобы получить дату и время в формате UTC. Вероятно, вы можете выбрать разницу между GETUTCDATE () и GETDATE () и использовать это различие для корректировки дат в формате UTC
. Но я согласен с предыдущим сообщением, что намного проще контролировать правильное datetime на бизнес-уровне (в .NET , например).
Да, в некоторой степени, как подробно описано здесь .
Подход, который я использовал (до 2008 г.), заключается в выполнении преобразования в бизнес-логике .NET перед вставкой в БД.