TIMESTAMP
é um nome infeliz que a equipe do SQL Server deu ao tipo de dados. É para simultaneidade e não tem nada a ver com data ou hora - eles recomendaram usar seu alias, ROWVERSION
para evitar confusão. Neste artigo do Books Online, "Em instruções DDL, use rowversion em vez de timestamp sempre que possível." Infelizmente, você não poderá derivar nenhum detalhe de data/hora do
ROWVERSION
coluna que você já possui, mas se essa informação for importante, você deve adicionar as colunas CreatedDate / ModifiedDate, por exemplo:ALTER TABLE dbo.foo ADD CreatedDate DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP;
ALTER TABLE dbo.foo ADD ModifiedDate DATETIME NULL;
Em seguida, crie um
TRIGGER
que dispara em UPDATE
para manter o valor ModifiedDate atual. Você pode precisar decidir se deseja que ModifiedDate seja NULL
ou igual a CreatedDate na inicialização.