0
トリガーをテストしましたが、1つの挿入行でのみ動作します。SQL Serverの複数行の挿入トリガー
トリガーが複数行の挿入で失敗し、トリガーを修正する構文が見つかりませんでした。
これを修正するための提案はありますか?
私は問題を気付かせるstackoverflowユーザーのおかげです。
トリガーをテストしましたが、1つの挿入行でのみ動作します。SQL Serverの複数行の挿入トリガー
トリガーが複数行の挿入で失敗し、トリガーを修正する構文が見つかりませんでした。
これを修正するための提案はありますか?
私は問題を気付かせるstackoverflowユーザーのおかげです。
UPDATE
ステートメントの構文が正しくありません。あなたが実際にCTE
を使用して、トリガーの二つの文をマージし、このCTE
にUPDATE
を行うことができます。
ALTER TRIGGER [dbo].[tr_update_father]
ON [dbo].[PROD_IVR_CALL]
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
;WITH ToUpdate AS (
SELECT pic.id_father,
MIN(pic.id) OVER (PARTITION BY pic.tnumber) AS min_id
FROM prod_ivr_call pic
INNER JOIN join prod_failure pf ON pic.ID_PROD_FAILURE = pf.ID
JOIN inserted ins ON ins.ID_PROD_FAILURE = pf.ID
WHERE pic.tnumber = ins.tnumber AND pic.is_requested = 0
)
UPDATE ToUpdate
SET id_father = min_id
END
全くそれらの変数を取り除きます。ここで行う必要があるのは、updateステートメントに挿入される別の結合を追加することだけです。 –