4
これは外部キーで行うことができますが、追加できないか、新しいレコードを挿入するときに奇妙なことが起こることがあります。このデータベースには多くのストアドプロシージャがあり、ストアドプロシージャについては何も知らないので、それらが何をしているのかわかりません。特定のProductIDを削除してProductテーブルから削除するトリガーを見つけられるように助けてくれることを願っていました。 CompanyLink、TargetLink、およびCategoryLinkという表にもあります。今のよう 複数のテーブルから1つのレコードを削除するSQL Serverのトリガー
は、私がProductテーブルからのProductIDを削除すると、私は手動でそれが挿入された他の3つのテーブルからそれを削除する必要があります。
SQLサーバートリガーはステートメントレベルであり、DELETEステートメントがProductから複数の行を削除すると、最初のものだけが子テーブルから削除されるため、(SELECT top 1 ...)の存在については疑問に思うでしょう。 –
それは私が思ったほど難しくはありません。ケン、あなたはSELECTトップ1以外を使って何を提案しますか? – Jamie
だから私は、この持っている:DELETE のProductID =(DELETED FROMのProductIDを選択) は、商品コード=は、(DELETED FROMのProductIDを選択)のTargetLink。DELETE FROM CompanyLink。DELETE FROM BEGIN AS AFTER dbo.Product ON TRIGGER dbo.ProductDeleted をCREATEを は、それが働いたよう END – Jamie