GMT e datetime
Quando você está trabalhando em diversas zonas de tempo, você precisa salvar os valoresdos dados em um formato padrão – o mais obvio é começar pelo GMT. O seguinte procedimento
converte o datetime em GMT e recupera dados no datetime atual do PC. /*Converte Datetime para GMT*/ CREATE PROCEDURE [dbo].[Convert_DateTime_to_GMT]
@dt_Date_Time as datetime
AS
select DATEADD ( hh , (DATEDIFF ( hh , GetDate(), GetUTCDate() )) , @dt_Date_Time )
GO/*Converte GMT para Datetime*/CREATE PROCEDURE [dbo].[Convert_GMT_to_DateTime]
@dt_GMT as datetime
AS
select DATEADD ( hh , (DATEDIFF ( hh , GetUTCDate(),GetDate() )) , @dt_GMT )
GO
Agora veja um exemplo de uso:
declare @dt nvarchar(20)Select @dt = cast('2003/10/12 13:12' as datetime)
exec Convert_GMT_to_DateTime @dt