MsSql判断表是否有自增标识

如果表有自增标识,那么就不能给这个自增列插入值或者更新这个列。

当然,如果要强制插入标识列也是可以的,只要设置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

两种方法都可以

转载于:https://www.cnblogs.com/ymworkroom/p/7779193.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值