SQLserver重置自增列,使自增列从1开始

SQLSERVER可以将表中的某一类设置成自增长,自增长列一般为主键列;

网上的方法前篇一律,思想都是一样的,但是遇到外键关联较多时都无法有效解决,请教资深DBA工程师后 ————我感觉我是个傻子。

网上的方法并不是不是不好,但是都是常规复制的总结,应对一般表结构完全没问题。

对于SQLserver处理复杂表结构时,可以先参考经验:

1、删除表数据(无外键的情况下!)

truncate table table_name

2、既然网上寻找答案,那必然目前操作无法满足你的需求—————表结构存在大量的外键
一般网上思路是删除外键,这种固然没错,但是当有大量外键时,这种方法并不是最优的。

----禁用外键约束
 ALTER TABLE TableName NOCHECK CONSTRAINT ALL;
 ----清空数据 
 TRUNCATE TABLE TableName
 ----启用外键约束 
 ALTER TABLE TableName CHECK CONSTRAINT ALL;

这种情况如果自增列依旧无效的话,可以考虑使用

ALTER SEQUENCE SEQ_TEST_UNIT RESTART WITH 0;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值