关于identity的问题?
问题是这样的:
我有一个表,两个字段(id和name),id是设置为identity(从1开始),一开始表里面有10条数据,然后我全删除了,接着我又往里面加数据了,这时id从11开始了,我想问的是,能不能让id从1开始?我知道有一个方法,就是重新建表,但除了这个方法,还有其他的方法吗?
[解决办法]
不用delete,用
TRUNCATE TABLE tb
[解决办法]
同意楼上,如果清空表的话,就用TRUNCATE TABLE tb,自增清零
[解决办法]
用TRUNCATE TABLE tb,清空表,则ID从1开始
sql TRUNCATE 和 delete 的区别
[解决办法]
delete后,删除自增列,重新添加自增列试试!
[解决办法]
谢谢,指点对我的帮助很大
[解决办法]
use Tempdbgocreate table T1(ID int identity)insert T1 default values;delete T1godbcc checkident('T1',reseed,0)goinsert T1 default values;goselect * from t1
[解决办法]
--1. 下面的代码演示了回滚事务导致标识值不连续的情况:--a.手工回滚事务CREATE TABLE #(id int IDENTITY(0,1),b int)INSERT # SELECT 1 --手工事务回滚BEGIN TRAN INSERT # SELECT 2ROLLBACK TRANINSERT # SELECT 2SELECT * FROM #DROP TABLE #/*--结果id b ----------------- ----------- 0 12 2--*/GO --b. 因操作失败自动回滚事务CREATE TABLE #(id int IDENTITY(0,1),b int UNIQUE)INSERT # SELECT 1 --违反惟一键约束,插入失败而导致自动回滚事务INSERT # SELECT 1INSERT # SELECT 2SELECT * FROM #DROP TABLE #/*--结果id b ----------------- ----------- 0 12 2--*/GO /*===================================================*/
[解决办法]