SQLServer自增id日常用法

在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。

好了,今天就研究到这里,通过这篇文章,你学到一招没有?

猜你喜欢

转载自blog.51cto.com/15057852/2649862