SQL Server 資料庫DML觸發器 【一】

來源:互聯網
上載者:User

標籤:

今天學習SQL Server資料庫中DML觸發器(DDL觸發器以後有時間繼續學習)。

 

當刪除一條建立有觸發器的表中的內容時,觸發器執行SQL語句。

 

1.首相先建立一張表,表名稱是 [Test] , 內有三個欄位,分別是 [Name], Sex, Place.

1 use inter2 create table Test3 (4     [Name] varchar(20) not null,5     Sex    varchar(20) not null,6     Place  varchar(20) not null7 )

 

2.然後為表中的欄位新增內容:

1 use inter2 insert into Test ([Name], Sex, Place) values (‘張三‘, ‘男‘, ‘北京‘)3 insert into Test ([Name], Sex, Place) values (‘李四‘, ‘女‘, ‘上海‘)4 insert into Test ([Name], Sex, Place) values (‘王五‘, ‘男‘, ‘廣州‘)

 

添加之後:

 

 

3.建立觸發器:

 1 set ANSI_NULLS ON 2 set QUOTED_IDENTIFIER ON 3 GO 4 -- ============================================= 5 -- Author:         H_F_us 6 -- Create date:    2014年12月28日20:29:47 7 -- Description:    測試觸發器 8 -- ============================================= 9 ALTER TRIGGER [dbo].[First_tg]10    ON  [dbo].[Test]11    AFTER DELETE12 AS 13 BEGIN14 15 insert into Test ([Name], Sex, Place) values (‘Test‘, ‘Test‘, ‘Test‘)16 17 END

 

4.之後,如果執行一條刪除語句,如:

 1 delete from Test where [Name] = ‘張三‘ 

 

5.則觸發器被觸動,執行下面SQL語句:

1 insert into Test ([Name], Sex, Place) values (‘Test‘, ‘Test‘, ‘Test‘)  -- 觸發器中事先寫好的SQL語句

 

6.語句執行之後,:

 

 

*解說:

1.觸發器SQL語句中 ALTER TRIGGER 後面跟的是觸發器的名稱,在符合SQL命名規範的前提下,任意選取。

2.觸發器SQL語句中 ON 後面跟的是要建立觸發器表的表名稱。

3. AFTER之後是執行哪種操作後啟用觸發器。 delete 、insert、 update,三種操作類型,至少觸發器中要真有一種,也可以是三種的任意組合,順序不受限制。

4.這個例子使用的是delete操作類型,其他動作類型同上。

5.在SQL觸發器中,不僅僅是只有AFTER 觸發器 還有一種是 INSTEAD OF 觸發器 。前者是在SQL語句執行之後,啟用觸發器,也就是今天所寫的這一種情況。而後者是在SQL語句執行之前啟用觸發器。

 

 

INSTEAD OF 觸發器的使用,會在 { SQL Server  資料庫觸發器使用 【二】}中寫出來。如果有什麼錯誤的地方請大家在評論區指正,先謝過。

 

SQL Server 資料庫DML觸發器 【一】

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.