Sql 自增恒等式问题
使用SQL Server 表1 RecordNo列是表1的标识列 问题Sql 自增恒等式问题,sql,sql-server,sql-server-2005,tsql,Sql,Sql Server,Sql Server 2005,Tsql,使用SQL Server 表1 RecordNo列是表1的标识列 问题 RecordNo列有时从0开始,有时从2开始。如何避免此问题--RecordNo列应始终从1开始。它不应该从其他数字开始 RecordNo ID -------------- 1 001 2 002 3 003 .... 需要查询帮助您可以在创建表格时设置起始值: Create Table Table1 ( RecordNo int not
RecordNo
列有时从0开始,有时从2开始。如何避免此问题--RecordNo列应始终从1开始。它不应该从其他数字开始
RecordNo ID
--------------
1 001
2 002
3 003
....
需要查询帮助您可以在创建表格时设置起始值:
Create Table Table1
(
RecordNo int not null Identity(1,1)
, Id char(3) ...
)
如果需要为给定表格重新设定种子,请参见。您可以在创建表格时设置起始值:
Create Table Table1
(
RecordNo int not null Identity(1,1)
, Id char(3) ...
)
如果需要为给定表重新设定种子,请参见。无论记录是否最终提交,自动递增的标识号都会递增。在我看来,初始插入可能失败,或者在未提交的事务中 标识列类型是一个代理标识符,不建议将该数字用于其他任何内容。您可以构建自己的自动增量功能,但由于性能和并发性问题,这通常不是一个好主意 此外,还可以:
编辑:我假设您的表定义设置正确,种子设置为1,增量设置为1 无论记录是否最终提交,自动递增的标识号都会递增。在我看来,初始插入可能失败,或者在未提交的事务中 标识列类型是一个代理标识符,不建议将该数字用于其他任何内容。您可以构建自己的自动增量功能,但由于性能和并发性问题,这通常不是一个好主意 此外,还可以:
编辑:我假设您的表定义设置正确,种子设置为1,增量设置为1 如何插入数据?正如Nathan提到的,SQL server忽略了未提交记录的标识值。。。但除非你告诉他,否则它永远不会以0开头!如何插入数据?正如Nathan提到的,SQL server忽略了未提交记录的标识值。。。但除非你告诉他,否则它永远不会以0开头!
dbcc checkident (table1, reseed, 1)