filetable为“ stream_id”列插入重复键

时间:2019-02-12 14:01:15

标签: sql-server tsql filetable

我有一个存储过程,该过程会将文件保存到filetable表中:

DECLARE @table1 TABLE (id NVARCHAR(50))
INSERT INTO FileTable1(file_stream,name,path_locator) OUTPUT inserted.stream_id INTO @table1 VALUES(@File,@FName,@SubDirectoryPath)

问题是,某些时间存储过程引发了insert duplicate key错误,我不知道为什么。 错误消息:

  

违反UNIQUE KEY约束``UQ__FileTabl__A236CBB318510CF4''。无法在对象“ dbo.FileTable1”中插入重复键。重复的键值为...

-----------------编辑---------------------
我知道Duplicate key是什么意思,但是我想知道:stream-id是否应该根据以下表结构自动插入sql server

CREATE TABLE [dbo].[FileTable1] AS FILETABLE ON [PRIMARY] FILESTREAM_ON [FSDataGroup]
WITH
(
  FILETABLE_DIRECTORY = N'FileTable1', FILETABLE_COLLATE_FILENAME = Arabic_CI_AS
)

1 个答案:

答案 0 :(得分:0)

能否请您检查表列上的UNIQUE KEY约束。看来您正在尝试将相同的值插入唯一键列。

您的列stream_id中有身份吗?