您的位置首页生活百科

mssql 自动增加 identity

mssql 自动增加 identity

的有关信息介绍如下:

mssql 自动增加 identity

在进行microsoft sql server数据库操作的时候,经常会遇到一个特殊的关键字

identity,它的作用有些类似于mysql数据库中的 auto_increment,在进行php开发的朋友,如果拿着mysql的教材,操作mssql的话,相信很多的人都会这个关键字弄的很火;

创建一个表movie,设置字段 id具有 identity(1,1),

注:identity(start,step),中的参数start表示从start开始标号,step表示每次递增的步长数量

当我们进行插入操作的时候,便会报如下的错误;

注:mysql上是可以这么操作的;

解决方法是,在使用前添加一句

SET IDENTITY_Insert movie ON;

注:SET IDENTITY_Inserttable switch表示是否允许table表中的

identity字段的插入操作,On表示允许,Off表示不允许

有时候为了安全性,会习惯性的在操作前,允许,操作后不允许:

注:mssql目前只允许同时只对一张表进行

SET IDENTITY_Insert tableON;

操作,所以如果考虑到在不同的表之间进行操作的话,

需要先把前一张表给OFF掉;

查看当前表的indentity的值:

dbcc checkident(table, NORESEED)

其中 table表示的要查看的表, NORESEED表示不会修改该值,

如下图查询到的结果是3

修改当前表的 identity的值

dbcc checkident(table,RESEED,value)

其中:

table表示的是要修改的表;

RESEED表示的是identity的值会被修改;

value表示的是修改后的值;

如下图所示,是把值修改成1后,查询的结果:

至此关于identity的内容就结束了;方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!

至此关于identity的内容就结束了;

方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!