2012年4月10日 星期二

【SQL 教學】 觸發程序 ( Trigger )

新增 觸發程序位置

主要 Tigger 是在 SQL 裡面 自動觸發事件(執行寫的一段程式碼,新增(請看圖片))

我大概寫一下我自己所要用到的用法

AFTER INSERT --程式新增後再新增觸發事件



---2012/04/10 Kares 新增
CREATE TRIGGER fixTable2 ON [dbo].[TABLE1]     ---fixTable2  , 針對TABLE1 資料表觸發
AFTER INSERT ---程式新增後 再比對 觸發事件 INSERT、UPDATE、DELETE 三種事件
NOT FOR REPLICATION ---不覆寫 
AS

DECLARE @YYYMM VARCHAR(5) --自訂變數
SELECT @YYYMM=NAME FROM inserted---程式新增一筆的暫存資料Table / inserted、deleted 

IF EXISTS(SELECT NAME FROM TABLE2 WHERE NAME=@YYYMM) ---判斷Keyword 資料在Table2有沒有建立過
BEGIN
PRINT '資料重復'
RETURN
END
ELSE
INSERT INTO TABLE2(NAME) VALUES(@YYYMM) ---新增一筆資料

如果要看到'資料重復' 這個字,就要到 SQL 裡面 Query Analyzer 新增一筆資料,就會看到自定的文字顯示,在程式端新增,是看不到這個訊息

沒有留言:

張貼留言