仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表

一、问题现象

    仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'xxx'中的标识列指定显式值 

二、原因解析

    如果想要给标识列显示的添加数据,需要设置标识列可以显示添加数据。 

三、解决方法

可以使用如下的方法:

set identity_insert  Table_Name on--设置标识列可以显示添加数据
insert into Table_Name(PCId,PCUse,PCNote) values(100,1,'aaa')
set identity_insert Table_Name off--设置标识列不可以显示添加数据 

四、总结

注意1:

要想显示的为某表的标识列显示添加数据,在insert语句中一定要在表后面显示要添加的字段,即使是所有字段,也不能省略。

如:PCInfo(PCId,PCUse,PCNote),如果只写PCInfo仍然不能为PCId显示的添加数据。 

注意2:插入完数据要将identity_insert设置为OFF。

若不关闭,则再次添加数据时,无法自增长,提示错误信息:

IDENTITY_INSERT 设置为ON 或某个复制用户向NOT FOR REPLICATION标识列中插入内容时,必须为表'login'中的标识列指定显式值。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30776559/viewspace-2150276/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30776559/viewspace-2150276/

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值