觸發器:根據事件觸發機制自動觸發的一段sql語句。觸發器的主要作用
觸發器分為兩種:資料操作語言觸發器和資料定義語言觸發器
觸發型別包括:insert、update、delete
兩張主要的表deleted和inserted
deleted表 執行delete或update操作時,被刪除的記錄會被移到deleted表中
inserted表 執行insert或update操作時,新的表會插入到inserted表中
用途:防止資料庫框架進行某些修改或記錄修改時間,如(drop、alter)
觸發器執行的目的分為after 、instead of。after執行sql語句後觸發,instead of執行sql語句前觸發,代替sql語句執行。
資料刪除回滾,使用者表[test_users],當刪除使用者id為3的資料時資料回滾提醒不讓刪除
create
table [dbo].[test_users](
[user_id] [int] identity(1,1) not
null,
[user_code] [varchar](50) null,
[user_name] [varchar](50) null,
[user_address] [varchar](200) null,
constraint [pk_test_users] primary
key clustered
( [user_id] asc
)with (pad_index = off, statistics_norecompute = off, ignore_dup_key = off, allow_row_locks = on, allow_page_locks = on) on [primary]
) on [primary]
觸發器
create
trigger utrggername
on test_users
after
delete
asbegin
set nocount on;
if exists(select * from deleted
where user_id = 3)
begin
print '該條資料不能刪除'
rollback;
endend
執行語句如果資料存在,保錯提示資料不能刪除
delete from [test_users]
where user_id = 3;
Oracle觸發器簡單介紹
作用 在動作執行之前或之後,執行一系列邏輯 分類 1 語句級觸發器 不管影響多少行,都只會執行一次 2 行級觸發器 影響多少行,就觸發多少次 標誌 有 for each row 特有功能 old 代表舊的記錄行 new 代表新的記錄行 語法 create or replace trigger 觸發器...
觸發器介紹
觸發器介紹 觸發器是一種特殊的儲存過程,它在插入,刪除或修改特定表中的資料時觸發執行,它比資料庫本身標準的功能有更精細和更複雜的資料控制能力。資料庫觸發器有以下的作用 安全性。可以基於資料庫的值使使用者具有運算元據庫的某種權利。可以基於時間限制使用者的操作,例如不允許下班後和節假日修改資料庫資料。可...
觸發器介紹
觸發器介紹 觸發器是一種特殊的儲存過程,它在插入,刪除或修改特定表中的資料時觸發執行,它比資料庫本身標準的功能有更精細和更複雜的資料控制能力。資料庫觸發器有以下的作用 安全性。可以基於資料庫的值使使用者具有運算元據庫的某種權利。可以基於時間限制使用者的操作,例如不允許下班後和節假日修改資料庫資料。可...