SQL Server自增主键插入已知值

        有时候我们需要对有自增长属性的字段插入值,但自增长字段是不允许插入数据的,如果直接插入数据会报错:

--测试数据
if not object_id(N'T') is null
	drop table T
Go
Create table T([Id] INT  IDENTITY,[Name] nvarchar(22))
--测试数据
Insert T(Id,name)
select 1,N'张三'

       这时候会报错:

 

       我们可以做如下操作,来对自增长字段插入数据:

--设置可以插入
SET IDENTITY_INSERT T ON;

--测试插入后读取数据
Insert T(Id,name)
select 1,N'张三'
Select * from T

       结果如下:

       最后我们恢复原来的操作:

SET IDENTITY_INSERT t_user_goods OFF;

       再分享一个小tips,SET IDENTITY_INSERT T ON;这样设置后可能不起作用,注意不要insert T select 这样,要写上具体插入的字段,这样就可以了,不会报错了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值