como faço uma inserção com DATETIME agora dentro do SQL server mgmt studio

103

Tenho um site que faz inserções na tabela abaixo. Preciso fazer algumas inserções manuais, mas não tinha certeza de como passar o equivalente a DateTime.Now em C #.

Estou executando isso a partir do editor de consultas no SQL server mgmt studio. Existe alguma maneira de passar a data e hora atual nesta consulta abaixo.

INSERT INTO [Business]
           ([IsDeleted]
           ,[FirstName]
           ,[LastName]
           ,[LastUpdated]
           ,[LastUpdatedBy])
     VALUES
           (0, 'Joe', 'Thomas', 
           ,<LastUpdated, datetime,>
           ,<LastUpdatedBy, nvarchar(50),>)
Leora
fonte

Respostas:

176

Use CURRENT_TIMESTAMP (ou GETDATE () em versões arcaicas do SQL Server).

Craig Stuntz
fonte
3
"Esta função é o ANSI SQL equivalente a GETDATE." Não é ANSI, não é pré
gbn
3
Não consigo pensar em um bom motivo para escrever SQL não padrão quando a versão padrão funciona tão bem.
Craig Stuntz
1
@CraigStuntz então CURRENT_TIMESTAMP é a versão ANSI, correto?
Felipe
47

Use apenas GETDATE()ou GETUTCDATE()(se quiser obter a hora UTC "universal", em vez da hora relacionada ao fuso horário do seu servidor local).

INSERT INTO [Business]
           ([IsDeleted]
           ,[FirstName]
           ,[LastName]
           ,[LastUpdated]
           ,[LastUpdatedBy])
     VALUES
           (0, 'Joe', 'Thomas', 
           GETDATE(),  <LastUpdatedBy, nvarchar(50),>)
marc_s
fonte