3

テーブルにトリガーを作成しようとしています。私の要件は、テーブルが存在する場合にのみトリガーを作成することです。

例えば

if(table exists)
        begin
             create trigger on the table 
        end 

グーグルした後、私はそれcreate triggerがバッチの最初のコマンドであるべきだとわかりました。つまりif、現在のバッチでまたは他のものを使用することはできません。

私を助けてください!

4

2 に答える 2

5

使用できます

IF(OBJECT_ID('YourTable','U') IS NOT NULL)
    EXEC('CREATE TRIGGER ....')

トリガー本体の単一引用符を2倍にして、エスケープする必要があります。

于 2012-09-18T11:03:19.337 に答える
-1

createtriggerステートメントを単独で使用するだけです。

テーブルがない場合は、データベースに対して何も実行せず、エラーメッセージを表示するだけです。悪いことは何も起こりません。

于 2012-09-18T10:57:55.440 に答える