在 SQL Server 中,我使用了一个表变量,完成操作后,我想将它的值插入到一个真实的表中,该表有一个标识列,该列也是 PK。
我正在制作的表变量有两列;物理表有四个,第一个是标识列,一个整数IK。我要插入的列的数据类型与目标列的数据类型相同。
INSERT INTO [dbo].[Message] ([Name], [Type])
SELECT DISTINCT [Code],[MessageType]
FROM @TempTableVariable
这失败了:
无法在具有唯一索引“IX_Message_Id”的对象“dbo.Message”中插入重复的键行。重复键值为 (ApplicationSelection)。
但是当尝试仅插入 Values (...) 时,它可以正常工作。
我怎样才能正确?