-
oracle觸發(fā)器查看全部
-
創(chuàng)建A表的備份表 sql語句怎么寫查看全部
-
觸發(fā)器編寫過程實例查看全部
-
觸發(fā)器類型查看全部
-
創(chuàng)建觸發(fā)器的基本語法查看全部
-
觸發(fā)器運用場景查看全部
-
數據庫 觸發(fā)器 概念啊查看全部
-
觸發(fā)器語法查看全部
-
觸發(fā)器查看全部
-
create table emp_back as select * from emp; -- 觸發(fā)器應用場景四:數據的備份和同步 -- 利用觸發(fā)器實現數據的同步部分 -- 當給員工漲完工資后,子宮備份新的工資到備份表中 create or replace trigger sync_salary after update on emp for each row begin -- 當主表更新后,自動更新備份表 update emp_back set sal=:new.sal where empno=:new.empno; --empno=:old.empno; 因為empno沒有變 end; /查看全部
-
-- 創(chuàng)建表,用于保存審計信息 create table audit_info ( information varchar2(200) ); create or replace trigger do_audit_emp_salary after update on emp for each row begin -- 當漲后的薪水大于6000,插入審計信息 if:new.sal > 6000 then insert into audit_info values(:new.empno||' '||:new.ename||''||:new.sal); end if; end; /查看全部
-
create or replace trigger checksalary before update on emp for each row begin --if 漲后的薪水 < 漲前的薪水 then if :new.sal < :old.sal then raise_application_error(-20002,'漲后的薪水不能少于漲前的薪水,漲后的薪水:'||:new.sal||',漲前的薪水:'||:old.sal); end if; end; / :old 和 :new 代表同一條記錄 :old 表示操作該行之前,這一行的值 :new 表示操作該行值后,這一行的值查看全部
-
select sysdate from dual; // 取出系統(tǒng)當前時間 select to_char(sysdate,'day') from dual; // 星期 1. 周末:to_char(sysdate,'day') in ('星期六','星期日') select to_char(sysdate,'hh24') from dual; // 取出系統(tǒng)時間的小時部分:23 (字符串) select to_number(to_char(sysdate,'hh24')) from dual; // 轉化成數字型 2. 上班前,下班后:to_number(to_char(sysdate,'hh24')) not between 9 and 18 create or replace trigger securityemp before insert (插入之前) on emp [declare] begin if to_char(sysdate,'day') in ('星期六','星期日') or to_number(to_char(sysdate,'dya')) not between 9 and 18 then --禁止insert新員工 錯誤代碼要求區(qū)間: -20000 ~ -20999 raise_application_error(-20001,'禁止在非工作時間插入新員工'); // 自定的錯誤代碼 // 錯誤信息 and if; end; / (補充:raise 表示數據庫產生了錯誤)查看全部
-
create[or replace] trigger 觸發(fā)器名 {before|after} {delete|insert|update[of 列名]} on 表名 [for each row [when(條件)]] (有這條語句的話就是行級觸發(fā)器,否則就是語句級觸發(fā)器) PLSQL 塊 1. 語句級觸發(fā)器 在指定的操作語句操作之前或之后執(zhí)行一次,不管這條語句影響了多少行。(針對的是表,觸發(fā)最多一次) 2. 行級觸發(fā)器 觸發(fā)語句作用的每一條記錄都被觸發(fā)。在行級觸發(fā)器中使用 :old 和 :new 偽記錄變量,識別值的狀態(tài)。(針對的是行,觸發(fā)器觸發(fā)次數不一樣,有多少行滿足條件就觸發(fā)多少次)查看全部
-
創(chuàng)建觸發(fā)器 create trigger saynewemp after insert on emp declare begin dbms_output.put_line('成功插入新員工'); end; /查看全部
舉報
0/150
提交
取消