2011-01-19 23 views
0

トリガまたはストアドプロシージャを使用したことはありません。今、私はいつどのように使っているのかを勉強したい。 商品テーブルが行iで充填されているときにProductIDとUnitsInStockをコピーしてインベントリテーブルにパッセージするときに、Productsという名前のテーブルがあります。インベントリテーブルには、行が充填されているときにユーザを購入しなければならないカラムが1つあります。トリガやストアドプロシージャがこの状況に役立つでしょうか?SQL Serverのトリガ、ストアドプロシージャ

答えて

1

個人的に私がコードを使用しているときに私はトリガを使用しませんでした。すべての作業がsqlで行われていれば問題ありません。その理由は、バックエンドで作業を行うトリガーであることを第三者が理解することが第一に困難であるためです。あなたのコードに間違いがあるとしたら、トリガーは最後にチェックするものです。列名が変更された場合は、コード内のエラーを簡単に取り出せます。ストアドプロシージャは良好ですが、すべてが組織によって異なります。私はコード内でsqlを実行することになり、関連するストアドプロシージャを何百ものストアドプロシージャを調べる際の前後の作業がないので、それを好きです。しかし私の見解...

0

挿入または更新後にテーブル間でデータをコピーする必要がある場合は、これを行うには適切な方法があります。

あなたのケースでは、列にユーザーが適用したデータを入力する必要がある場合は、おそらくコードからこれを行う必要があります。

ストアドプロシージャの使用について:thisを参照してください。しかし、このテーマについては、ウェブ上で多くの議論があります。ちょうどGoogleの周り少し。

0

ストアドプロシージャを使用して、パラメータとして必要なすべての値を渡してから、トランザクションポスト内で商品テーブルとインベントリテーブルに変更してから、両方のテーブルに同時に変更をコミットします。更新されるか、どちらも実行されません。

関連する問題