Redefinir o valor identidade de uma tabela (reseed)

Bases de Dados, Informática, Microsoft SQL Server, Transact-SQL Scripts em Janeiro 2, 2013 Sem comentários

Em algumas situações é necessário repor a numereção (Reseed) da Identificação (ID) das linhas de uma tabela. Na maioria dos casos, esta necessidade surge porque os dados desta foram eliminados, parcial ou totalmente, e se deseja repor a sua numeração, devido a razões de consistência, estilo, ou outras. O Identificador é único (UNIQUE) e de incremento automático (AUTO-INCREMENT).
Para repor o valor Identificador de uma tabela, deverá ser executado o seguinte código:

DBCC CHECKIDENT (<yourtable>, reseed, 1)

Neste exemplo, o valor do Identificador seria reposto com o valor 1, o que faria com que a próxima linha a ser inserida assumisse esse valor. Claro que este procedimento está sujeito a restrições impostas por parte do SGBD. O procesimento não resultará nos casos em que o valor já esteja tomado por alguma das linhas existentes. Provocará problemas se o valor for definido com um valor abaixo de algum que já exista, o que fará com que, em algum momento esse valor vá coincidir com outro, o que provocará erros devido às restrções de unicidade do atributo. Se a tabela não tiver um Identificador, o SGBD fará notar esse facto com a seguinte mensagem: ‘yourtable’ does not contain an identity column.

Portugal Promotional Tourism Film | 2011

Uma imagem vale por mil palavras em Outubro 11, 2011 Sem comentários


Browsers

Uma imagem vale por mil palavras em Outubro 11, 2011 Sem comentários

Browsers

O segredo para o sucesso

Reflexões em Outubro 11, 2011 Sem comentários

Há uns tempos, recebi um documento interessante com uma lista de máximas, sobre o segredo para alcançar o sucesso. Li-as atentamente e considero que resumem muito bem as linhas orientadoras que devem pautar um caminho bem sucedido, por isso, tal como alguém um dia as partilhou comigo, também eu as venho partilhar, para que sirvam como factor motivador de todos aquelas que as venham a ler.

Ler mais »

Saber o tamanho real de uma base de dados

Bases de Dados, Microsoft SQL Server, Transact-SQL Scripts em Julho 12, 2011 Sem comentários

select
name,
cast((size/128.0) as int) as TotalSpaceInMB,
cast((cast(fileproperty(name, 'SpaceUsed') as int)/128.0) as int) as UsedSpaceInMB,
cast((size/128.0 - cast(fileproperty(name, 'SpaceUsed') as int)/128.0) as int) as FreeSpaceInMB
from
sys.database_files

Porque é azul o céu?

Curiosidades, Destaques em Junho 28, 2011 Sem comentários

Há cerca de 100 anos, um físico britânico, Lord John Rayleigh, foi quem fez a primeira explicação plausível (e a mais bem aceite pela comunidade científica) acerca da cor do céu ser azul e não de outra cor. Ler mais »

Tags: ,

Como transferir Logins de uma instância para outra

Bases de Dados, Microsoft SQL Server em Dezembro 20, 2010 Sem comentários

Este artigo descreve, resumidamente, como poderão ser transferidos os logins entre duas instâncias de SQL Server, 2005 ou 2008.

Ler mais »

Tags: ,

Web 2.0 e Web Semântica

Destaques, Informática, Internet em Agosto 16, 2010 Sem comentários

Web Semântica

A Web Semântica é algo que tem vindo a ganhar algum relevo, embora muitos não saibam ainda o que significa. Prevê-se um forte aumento da relevância da Web Semântica nos próximos tempos, motivo que me levou a publicar este artigo dedicado ao tema.

Ler mais »

Porque existem anos bissextos?

Curiosidades, Destaques em Maio 12, 2010 1 Comentário

Terra em torno do Sol

De acordo com o calendário convencional, o planeta Terra demora 365 dias a completar uma volta em torno do Sol. Mas, na verdade, a Terra demora um pouco mais do que isso.

Ler mais »

A Felicidade

Reflexões em Maio 6, 2010 2 Comentários

A felicidade é algo que se pode crer depender de um objectivo a atingir, mas não depende.
Ler mais »