You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server 2008自增主键重置:如何指定新插入数据的ID值

重置SQL Server 2008自增主键起始值的解决方案

嘿,我之前也碰到过一模一样的问题——SQL Server的自增IDENTITY列就是这么“轴”,哪怕你删了之前的数据,它也会死死盯着上次的ID往下续。要让新插入的数据从17开始,用个系统命令就能搞定,步骤超简单:

具体操作步骤

  • 先确认你的目标表名和自增列名,比如我的表叫Customer,自增列是CustomerID,你替换成自己实际的名称就行。
  • 打开SQL Server Management Studio(SSMS),执行下面的命令:
    DBCC CHECKIDENT ('YourTableName', RESEED, 16);
    
    为啥填16不是17?因为RESEED是设置下一条插入数据的前置值,自增列会自动加1,所以设成16的话,下一条插入的ID刚好就是17,完美匹配你的需求。
  • 执行完命令后,你可以插一条测试数据验证效果,比如:
    INSERT INTO YourTableName (Name, Phone) VALUES ('测试用户', '138xxxxxxx');
    
    查一下表,这条新数据的ID肯定是17没错。

重要注意事项

  • 执行前最好先备份数据,或者先查一下表中现有数据的最大ID:如果现有ID已经大于等于17,插入新数据时会直接触发主键冲突错误,这时候你得先处理掉那些ID≥17的数据,或者根据实际情况调整RESEED的值。
  • 如果表是空的,直接执行命令就没任何问题;如果还有存量数据,一定要确保现有最大ID小于17,不然强行重置很容易搞出数据冲突哦。

内容的提问来源于stack exchange,提问作者Ricky Reza Muhammad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 17:17:29