sql觸發器(insert,update,delete)
--insert 觸發器
create trigger tri_insert
on student --將要進行更改的表名
for insert --給表插入一條資料的時候觸發
as
declare @student_id char(10)d SELECT @student_id=s.student_id from --把查詢出的指定欄位的值賦值給變數
student s inner join inserted i
on s.student_id=i.student_id
if @studgin_id='0000 '不能插入1的學號!',16,8)
rollback tran
end
go
--update觸發器
create trigger tri_updateon student --將要進行更改的表格給日期修改一條資料的時候觸發
as
if update(student_id)
begin
raiserror('學號不能修改!',16,8)
rollback trandelete
on student --將要進行更改的表名
for delete --給表刪除一條資料的時候觸發
as
declare @student_id varchar(10)
select @student_id=student_id from deletedif'
begin
rollback tran
end
解釋:在刪除(delete)資料的時候,可以假設資料庫將要刪除的資料表中,deleteed讀取普通的表格一樣,select 欄位from deleted
而insert的時候道理一樣,只不過是把要插入的資料放在inserted表中。
更新操作可以認為是執行了兩個操作,先把那一行記錄delete掉,然後再insert,這樣update操作實際上就對deleted表和inserted表的操作,所以不會有updated表了,有的時候兩個表是主外鍵關係,想刪除主表資料的同時把子表相關的資料也刪除,這個時候如果用觸發器就沒有效果了,因為這個觸發器是在你刪除表後才觸發的,這個時候直接終止,提示“有主外鍵關係,不能刪除等”,所有這樣的刪除觸發器是沒有效果的

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)