SQLServer自增id日常用法
来自https://www.modb.pro/db/114844
在SQLServer数据库中某一个表要设置自增字段,字段类型必须为数值类型,比如decimal、int、numeric、smallint、bigint、tinyint 等类型,需要注意的是decimal和numeric类型如果要设置成自动增长列,则小数位数必须为0,否则设置不成功。
设置自增的关键字语法是:create table 表名(字段名 字段类型 identity(m,n)),字段类型必须是数值型,且为整数。m为自增id的起始值,n为步长,即表示从m开始,每次增加n。
两个值都不指定的话,默认是(1,1),两个值可以同时指定,或者同时默认,不支持只写一个参数。
不知道大家注意过没有:m和n都可以为负数噢。n为负数的话,id每次递减1。有人用过自增列的自动递减功能吗?
自增列最常用的两个功能:
第一个关闭自增,手动插入一个id值,然后再打开自增。
语法如下:
set identity_insert 表名 on;
insert into 表名(列名1,列名2,列名3,列名4) values (数据1,数据2,数据3,数据4);
set identity_insert 表名off;
其中列名1为自增列。
第二个常用功能是把自增列的下一个值设置为自己想要的值
语法如下:
DBCC CHECKIDENT ('[数据表名]',RESEED, [需要的值-1])
比如,自己想把下一个自增id的值设置为10000,那么
DBCC CHECKIDENT (table_name,RESEED, 9999).
再插入数据的时候,会看到,自增id列的值为10000。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!