首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

标识列有关问题

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

标识列问题
表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
*/

热点排行