MsSql判斷表是否有自增標識
阿新 • • 發佈:2017-11-03
code sco blog sql語句 value 自增列 不能 沒有 columns
如果表有自增標識,那麽就不能給這個自增列插入值或者更新這個列。
當然,如果要強制插入標識列也是可以的,只要設置Identity_insert為on即可,語法:
set Identity_insert tablename on; insert into tablename (col1,col2) values (value1,value2)
但有時候我們在操作表的時候,我們並不知道這個表有沒有標識列,如果有自增的標識列,我們可以用上面的方法打開開關進行插入,但是如果這個表是沒有自增列的,用了上面的方法就會報錯,所以我們有必要在使用這個開關語句的時候先判斷一下這個表是不是有標識列,判斷的SQL語句有兩種:
select * from syscolumns where id=object_id(N‘tablename‘) and COLUMNPROPERTY(id,name,‘IsIdentity‘)=1; select * from syscolumns where id=object_id(N‘tablename‘) and status=0x80
兩種方法都可以
MsSql判斷表是否有自增標識