2016-05-25 95 views
2

私は次のような要件を持っています。
私は2008年

1.表A(同上)
SQL Serverを使用しています 2.表B(同上、ATTR1、Attr2の、Attr3)

表Aと表Bは、行の同じノーを持っています。 Idは両方の表の主キーですが、参照関係は定義されていません。SQLサーバー2008で自律型トランザクションを実現

私はINSERTのための表Aのトリガーを持っています。レコードが表Aに挿入されている場合は、表Bに同じIDを挿入し、少数の属性を計算し、そのIDの表Bにレコードを取り込みます。私はトリガを使用してこれを達成しています。
テーブルBでトランザクションが失敗した場合、テーブルAのトランザクションも失敗することはありません。表Bを更新する際にトリガーが成功するか失敗するかにかかわらず、表Aのトランザクションを成功させ、表Bのトランザクションに依存しないようにします。どのように達成するのですか?

+1

だから、あなたの質問に暗示は*あなたは、テーブルAの行が、該当する行がテーブルB.次にあるとき、私たちはどのように決定する必要がある回があるかもしれないことを受け入れられてきたということですタイムリーに*その状況を是正する必要があります。そして、それはどのくらいの頻度で実行する必要があるかを教えてください。表Aの行に基づいて表Bに表Bの行を入れないジョブまたはスケジュールされたタスク。(今はほとんど無意味な)トリガーを取り出します。 –

+0

返信いただきありがとうございます。私は下のスレッドから答えを得た。 http://dba.stackexchange.com/questions/137305/can-we-commit-the-transaction-when-the-sql-server-trigger-fails – saratbala

答えて

0
+1

ここでは、リンクのみの回答が嫌になる傾向があります。リンクが死んでしまった、あなたの答えには*有用な*情報が含まれていますか?リンクしているアイテムのタイトルも教えてくれません。 –

+0

公式のmsdnの説明が死んでしまうと、この質問も死んでしまうでしょう。明示的な回答が必要な場合は、同じポスト(リンクから)を書き直すために怠惰でない人物を待ってください。 – JassyJov

+0

メタから取ったもの:リンクは実際にあなたの答えにいくつかの文脈を提供する限り悪いことではありません。あなたがしようとしているのは、あなたの答えにリンクを投稿しているだけで、あなたは本当に答えていない、あなたはちょうどユーザーのために迂回路を提供している。少なくとも、あなたはリンクがどこに行くのか、それがユーザーを見せてくれるのかを説明することができます(OPが質問に答えるためにリンクをクリックする必要がないように、答えに重要なものを引用することさえ可能かもしれません)。 – TheGameiswar

関連する問題