-
創(chuàng)建觸發(fā)器的語(yǔ)法:
create (/replace) trigger [trigger_name]
before/after
delete/insert/(update (of column))on [tablename]
on [table_name]
(for each row (when(condition)))
(declare)無(wú)變量存在可省略
begin
plsql語(yǔ)句
end
1 存在for each row 語(yǔ)句就是行級(jí)觸發(fā)器,沒(méi)有就是語(yǔ)句級(jí)觸發(fā)器
2 語(yǔ)句級(jí)觸發(fā)器針對(duì)表,行級(jí)觸發(fā)器針對(duì)行
例如:往表內(nèi)插入3條數(shù)據(jù)
如果是行級(jí)觸發(fā)器則被調(diào)用3次
如果是語(yǔ)句級(jí)觸發(fā)器則被調(diào)用1次,因?yàn)獒槍?duì)表的操作只有一次
查看全部 -
數(shù)據(jù)庫(kù)觸發(fā)器是一個(gè)與表相關(guān)聯(lián)的、存儲(chǔ)的PL/SQL程序。每當(dāng)一個(gè)特定的數(shù)據(jù)操作語(yǔ)句(insert、update、delete)在指定的表上發(fā)出時(shí),Oracle自動(dòng)地執(zhí)行觸發(fā)器中定義的語(yǔ)句序列。也就是說(shuō)select語(yǔ)句是沒(méi)有觸發(fā)器的.
例子:create trigger? [trigger_name]
? ? ? ? ? ? ? ? ? ? after? [insert]
? ? ? ? ? ? ? ? ? ? ?on [table_name]
? ? ? ? ? ? ? ? ? ? ?declare?
? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? dbms_output.put_line('成功插入新員工');
? ? ? ? ? ? ? ? ? ? ? ? end;
查看全部 -
數(shù)據(jù)庫(kù)觸發(fā)器是一個(gè)與表關(guān)聯(lián)的、存儲(chǔ)的PL/SQL程序。
eg:創(chuàng)建觸發(fā)器:create trigger? saynewemp
? ? ? ? ? ? ? ? ? ? after? insert
? ? ? ? ? ? ? ? ? ? ?on emp
? ? ? ? ? ? ? ? ? ? ?declare?
? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? dbms_output.put_line('成功插入新員工');
? ? ? ? ? ? ? ? ? ? ? ? end;
查看全部 -
觸發(fā)器是一個(gè)特殊的存儲(chǔ)過(guò)程
觸發(fā)器的應(yīng)用場(chǎng)景:復(fù)雜的安全性檢查、數(shù)據(jù)確認(rèn)、實(shí)現(xiàn)審計(jì)功能、完成數(shù)據(jù)的備份和同步
查看全部 -
oracle,加油!查看全部
-
數(shù)據(jù)庫(kù)審計(jì)功能場(chǎng)景
查看全部 -
數(shù)據(jù)確認(rèn)場(chǎng)景
查看全部 -
raise application_error():
查看全部 -
觸發(fā)器筆記
查看全部 -
觸發(fā)器的應(yīng)用場(chǎng)景查看全部
-
數(shù)據(jù)的備份和同步的范例:
查看全部 -
3、數(shù)據(jù)的審計(jì)
查看全部 -
觸發(fā)器的應(yīng)用場(chǎng)景2:數(shù)據(jù)的確認(rèn)。
查看全部 -
????????????????????????????????????????創(chuàng)建觸發(fā)器的語(yǔ)法
CREATE [OR REPLACE] TRIGGER 觸發(fā)器名
{BEFORE|ALTER}
{DELETE|INSERT|UPDATE[OF 列名]}
ON 表名
[FOR EACH ROW [WHEN(條件)]]
PLSQL 塊
查看全部 -
觸發(fā)器應(yīng)用場(chǎng)景1如下:
查看全部
舉報(bào)