回覆列表
  • 1 # 使用者7364316064609

    使用 動態 SQL, 好像是可以處理。

    1> CREATE procedure fpinput_proc

    2> AS

    3> BEGIN

    4>

    5> DECLARE @sql VARCHAR(MAX);

    6> SET @sql =

    7> "CREATE TRIGGER AfterDeleteVIP "

    8> + " ON VIP "

    9> + " FOR DELETE "

    10> + "AS "

    11> + "BEGIN "

    12> + " DELETE FROM VB "

    13> + " WHERE "

    14> + " V_No IN (SELECT V_NO FROM deleted); "

    15> + "END; "

    16>

    17> EXECUTE (@sql);

    18> END;

    19> go

    1> begin

    2> exec fpinput_proc;

    3> end

    4> go

    1> select

    2> tri.name AS TriggerName

    3> from

    4> sys.triggers tri

    5> go

    TriggerName

    ------------------------------------------------------

    AfterDeleteVIP

    也就是把那一段 建立觸發器的語句, 放到一個 @Sql 的變數中。

    然後 EXECUTE (@sql);

    那麼在儲存過程執行完畢後,觸發器就建立了。

    你上面那個 建立 檢視的例子, 也可以這麼操作。

  • 中秋節和大豐收的關聯?
  • 烤肉用特殊中藥香料有哪些聞起來特別?