sexta-feira, 16 de março de 2012

Como zerar o campo autoincremento do Sql Server (Indentity Increment)?

Como zerar o campo autoincremento do Sql Server (Indentity Increment)?

Os campos de identificação automática (Indentity Increment) do SqlServer possuem um contador mantido nas tabelas do sistema, para alterar as mesmas deve-se utilizar o comando DBCC para auterar a mesma.
Um dos comando utilizado para realizar a limpeza da tabela e reiniciar o índice de auto incremento é o camando Truncate.

Truncate Table NomeDaTabela
Para zerar completamente o contador, iniciando do zero novamente:

DBCC CHECKIDENT ('NomeDaTabela', RESEED, 0)
Para colocar o ultimo numero utilizado:

DBCC CHECKIDENT ('NomeDaTabela', RESEED, (select max(nome_campo) from NomeDaTabela))

Outros comandos para INDENTITY

IDENT_CURRENT('table_name')

SELECT IDENT_CURRENT('table_name')

IDENT_INCR ( 'table_or_view' )

SELECT TABLE_NAME, IDENT_INCR(TABLE_NAME) AS IDENT_INCR
FROM INFORMATION_SCHEMA.TABLES
WHERE IDENT_INCR(TABLE_NAME) IS NOT NULL

IDENT_SEED ( 'table_or_view' )

SELECT TABLE_NAME, IDENT_SEED(TABLE_NAME) AS IDENT_SEED
FROM INFORMATION_SCHEMA.TABLES
WHERE IDENT_SEED(TABLE_NAME) IS NOT NULL


Fonte : MSDN e EvandroNet

Abraço a todos.

Nenhum comentário:

Postar um comentário