我创建了一个唯一索引(如果IsDelete!= 1,则案例描述应该是唯一的)
CREATE UNIQUE NONCLUSTERED INDEX [UniqueCaseDescription]
ON [tblCases] ([fldCaseDescription] ASC)
WHERE [IsDeleted] = CAST(0 AS varbinary(1))
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
然后,当我运行以下过程时,它会抛出'UPDATE失败,因为以下SET选项的设置不正确:'ARITHABORT'。验证SET选项是否正确用于过滤索引。'
ALTER PROC [usp_DeleteCase] (@fldCaseID UNIQUEIDENTIFIER)
AS
BEGIN
UPDATE tblCases
SET IsDeleted = 1
WHERE fldCaseID = @fldCaseID
RETURN 1
END
我尝试在UPDATE语句之前添加SET ARITHABORT ON,但是没有做任何事情。
非常感谢任何帮助!
答案 0 :(得分:0)
如果您使用SQL Server
尝试应用以下设置:
1)打开SQL Server Management Studio。 2)右键单击您使用的数据库名称,然后选择属性>选项菜单。然后从打开的对话框中设置Arithmetic abort enabled = True。
注意:我还尝试使用脚本应用相同的设置,但通过SSMS使用此方法最好应用此设置。
希望这会有所帮助......