读书人

标识列有关问题

发布时间: 2011-12-29 22:09:38 作者: rapoo

标识列问题
表ID列为IDENTITY (1,1),
使用
Truncate Table 表名
--如果定义了IDENTITY (1,1),ID号会从1开始。

delete from 表名
--下一条记录的标识ID为紧接delete之前的标识
--------------------------------------------
是否有sql语句可以使使用delete语句之后的ID标识恢复为1
使用过DBCC CHECKIDENT (表名, RESEED, 1)结果不行?



[解决办法]
--建境
Create Table TEST(ID Int Identity(1, 1) ,Name Varchar(10))
GO
--插入
Insert TEST Select 'AA '
Union All Select 'BB '
Union All Select 'CC '

--除
Delete From TEST

--ID标识恢复为1
DBCC CHECKIDENT (TEST, RESEED, 0)--注意是0,不是1

--再次插入
Insert TEST Select 'DD '
Union All Select 'EE '

--查
Select * From TEST

--除境
Drop Table TEST

--果
/*
IDName
1DD
2EE
*/

读书人网 >SQL Server

热点推荐