Developing

Introdução

Muitos confundem o TimeStamp do SQL Server  com o TimeStamp do ANSI, achando que ambos se referem ao tipo de dado onde é possível armazenar data e hora no mesmo campo. Porém os dois são completamente diferentes apesar de possuírem o mesmo nome.

O ANSI prevê os tipos Date, Time e TimeStamp onde:

  • O tipo date armazena somente data;
  • O tipo time somente hora;
  • E o tipo timestamp armazena ambos, tanto a data quanto a hora.

No SQL Server o tipo Date e o tipo Time não existem, porém, existe o tipo DateTime que armazena tanto a hora quanto a data, sendo assim, possui a mesma funcionalidade que o tipo TimeStamp do ANSI.

Mas e agora, o que significa então o tipo TimeStamp do SQL Server?

SQL Server TimeStamp Type

Muitos acham que o TimeStamp é um outro nome, ou um sinônimo, do tipo DateTime, mas não é assim. O TimeStamp  do SQL Server é um tipo de dados especial que altera seu valor toda vez que o registro é manipulado (Inserts e Updates).

Quando se insere um novo registro a coluna TimeStamp ganha um valor automaticamente e quando se atualiza um registro a coluna TimeStamp tem seu valor alterado automaticamente.

Conclusão

O TimeStamp nada mais é do que um coluna que toda vez que tem seu registro alterado seu valor é atualizado automaticamente.

Embora seja uma “marcação de data”, o TimeStamp não é exibido como data, não pode ser  inserido e/ou atualizada explicitamente (por meio de inserts e updates especificando seu valor).

Finalidade

Utilizada para “versionar” a linha (registro), uma vez que qualquer alteração na linha, a coluna TimeStamp é alterada automaticamente.

Utilizada para controle de concorrência.

Leia

MVP – Gustavo Maia:  Mais um velho problema de concorrência

Referências

MSD – rowversion

Veja Também

SQL Server – DATEDIFF

_____

Não se esqueça de deixar seu comentário, critica, elogio, dúvida e etc. Ele é muito importante para a melhoria do blog.
Do not forget to leave your comments, criticism, praise, questions, etc.. It is very important for improving the blog.

Advertisements

Comments on: "SQL Server – TimeStamp" (8)

  1. Marcelo said:

    Muito interessante!

  2. Vlw pela dica .

  3. Fabrício M. said:

    Obrigado! Foi de grande ajuda! =]

  4. cleiton said:

    muito bom vlw!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: