0

一意のインデックスを作成しました (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]

次に、次の手順を実行すると、「次の SET オプションの設定が正しくないため、UPDATE が失敗しました: '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 を追加しようとしましたが、何もしませんでした。

どんな助けでも大歓迎です!

4

1 に答える 1

0

使用SQL Serverする場合は、次の設定を適用してみてください。

1) SQL Server Management Studio を開きます。2) 使用するデータベース名を右クリックし、[プロパティ] > [オプション] メニューを選択します。次に、開いたダイアログから、Arithmetic abort enabled = True を設定します。

注:スクリプトを使用して同じ設定を適用することも試みましたが、この設定を適用するには、SSMS 経由でこの方法を使用する方が適切です。

お役に立てれば...

于 2016-03-02T14:39:00.853 に答える