作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在具有标识列的表中插入记录。由于各种原因,这不应该是直接插入,但它应该与外部表具有相同的 ID。所以我跑:
EXECUTE ('SET IDENTITY_INSERT RemoteDB.dbo.FrameContent ON')
INSERT INTO [RemoteDB].[dbo].[FrameContent] ([ID],[FrameID],[PacketType])
SELECT [ID],[FrameID],[PacketType]
FROM FrameContent
WHERE [ID] NOT IN (SELECT [ID] FROM [RemoteDB].[dbo].[FrameContent])
我得到了错误:
Cannot insert explicit value for identity column in table 'FrameContent' when IDENTITY_INSERT is set to OFF.
有什么想法吗?它提示 IDENTITY_INSERT 不应该关闭,但我将其设置为打开。
最佳答案
尝试在execute
之外设置dentity_insert
:
SET IDENTITY_INSERT RemoteDB.dbo.FrameContent ON;
INSERT ...
如果你在execute
中设置它,它只会应用于execute
中的其他语句。
关于sql - 当 IDENTITY_INSERT 设置为 OFF 时,无法在表中插入标识列的显式值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17211987/
我是一名优秀的程序员,十分优秀!