ストアドプロシージャを複数回実行することなく複数の行を削除するには、ユーザー定義のテーブル型を使用する必要があるストアドプロシージャを作成しています。私の質問は、1つのユーザ定義テーブルタイプ(17の代わりに、各テーブルに1つ)を記述し、関連するテーブルを指定するカラムを追加することです。ユーザー定義テーブル型
DELETE FROM Table1
WHERE A_ID IN (SELECT ID FROM UserDefinedTableType WHERE TblClm = 'Table1'
は、私が上記の文に同じユーザー定義テーブル型と、これは仕事をしたりしません場合、私は疑問に思って次の文
DELETE FROM Table2
WHERE A_ID IN (SELECT ID FROM UserDefinedTableType WHERE TblClm = 'Table2'
を使用することができます。たとえば、ここに私のDELETEステートメントです。私はこのコンセプトに慣れていないので、このようにUser Defined Table Typesを使用するための良い文書を見つけることができませんでした。
ありがとうございました。
私はこのアプローチで何か間違っていることはありませんが、これまでに見たことではありません。私はINの代わりにあなたの削除ステートメントで結合を使用しますが、正直なところ、同じことに終わるでしょう。 –
よろしくお願いいたします。私は結合を使うことができましたが、INを好むだけで、どのIDが削除されているかを明示的に定義することができます。しかし、提案をありがとう。 –
あなたはIDで参加します。 :) –