SQL SERVER
Gostaria de fazer no SQL Server, aquela opção, compactar o banco que tem no Acces, que faz o seguinte, ele reinicializa os campos auto numéricos, tipo um campo sequencial, a cada entrada soma-se 1 ao campo, após varios testes, como vou apagando, acrescentando, ele não começa a inserir a partir da sequencia 1, exemplo:
codigo: 1
codigo: 2
.
.
codigo: N
quero zerar este campo e começar a inserir a partir do codigo: 1 de novo, pois como esta, o próximo registro inserido seria, N+1, mesmo que tivesse excluido codigo: N.
Será que alguem conhece o comando, ou onde posso encontrar este comando...
Obrigado!!!!!
codigo: 1
codigo: 2
.
.
codigo: N
quero zerar este campo e começar a inserir a partir do codigo: 1 de novo, pois como esta, o próximo registro inserido seria, N+1, mesmo que tivesse excluido codigo: N.
Será que alguem conhece o comando, ou onde posso encontrar este comando...
Obrigado!!!!!
Se eu entendi vem vc tem um campo identity e quer zera-lo ou mudar a sequencia do proximo valor a ser inserido...
se for isso vc pdoe fazer de duas maneiras . Truncando a tabela (truncate table <nome da tabela> ) , vc zera o identity. Vale lembrar que o truncate table elimina todos os dados da tabela (como um delete) só que mais rápido e esta tabela não pdoe ter FKÂÂÂ's..senão este comando não funciona.
Agora, se vc quer mudar a sequencia use o comando dbcc checkident no query analyzer
DBCC CHECKIDENT
( 'table_name'
[ , { NORESEED
| { RESEED [ , new_reseed_value ] }
}
]
)
Por exemplo DBCC CHECKIDENT (Clientes, RESEED, 30) força a sequencia do identity para 30. De uma olhadinha no books on line sobre este comando. Vale lembra tb que vc tem que ter privilegios de sysadmin, db_owner ou db_ddladmin no banco para rodar estes comando.
se for isso vc pdoe fazer de duas maneiras . Truncando a tabela (truncate table <nome da tabela> ) , vc zera o identity. Vale lembrar que o truncate table elimina todos os dados da tabela (como um delete) só que mais rápido e esta tabela não pdoe ter FKÂÂÂ's..senão este comando não funciona.
Agora, se vc quer mudar a sequencia use o comando dbcc checkident no query analyzer
DBCC CHECKIDENT
( 'table_name'
[ , { NORESEED
| { RESEED [ , new_reseed_value ] }
}
]
)
Por exemplo DBCC CHECKIDENT (Clientes, RESEED, 30) força a sequencia do identity para 30. De uma olhadinha no books on line sobre este comando. Vale lembra tb que vc tem que ter privilegios de sysadmin, db_owner ou db_ddladmin no banco para rodar estes comando.
Tópico encerrado , respostas não são mais permitidas