ORACLE PL/SQL 觸發器編程篇介紹建站知識
導讀:1建站知識ORACLE PL/SQL 觸發器能夠完成由數據庫的完整性約束難以完成的復雜業務規則的約束;監視數據庫的各種操作以及實現審seo網站關鍵詞優化網站建設哪家好。
1.基本概念 兩種功能:完成由數據庫的完整性約束難以完成的復雜業務規則的約束;監視數據庫的各種操作,實現審計功能。 觸發器分為:DML觸發器(對表或視圖執行DML操作時觸發),INSTEAD OF觸發器(只定義在視圖上,替代實際的操作語句),系統觸發器(對數據庫系統進行操作時觸發,如DDL語句、啟動或關閉數據庫等) 觸發事件: 上述觸發器中括號內容都是觸發事件。 觸發條件: WHEN子句 觸發對象:包括表、視圖、模式、數據庫。 觸發操作:觸發器自動執行的程序。 觸發時機:觸發器相對操作執行的時間,BEFORE/AFTER 條件謂詞:INSERTING(觸發器事件為INSERT時為真),UPDATING,DELETING 觸發子類型:行觸發和語句觸發,觸發中的new和old表。 2.創建觸發器
復制代碼 代碼如下:
CREATE OR REPLACE TRIGGER<觸發器名>
觸發條件 觸發體復制代碼 代碼如下:
CREATE TRIGGER my_trigger --定義一個觸發器my—trigger BEFORE INSERT or UPDATE of TID,TNAME on TEACHERS FOR each row WHEN(new.TNAME='David') --這一部分是觸發條件 DECLARE --下面這一部分是觸發體 teacher_id TEACHERS.TID%TYPE; INSERT_EXIST_TEACHER EXCEPTION; BEGIN SELECT TID INTO teacher_id FROM TEACHERS WHERE TNAME=new.TNAME; RAISE INSERT_EXIST_TEACHER; EXCEPTION --異常處理也可用在這里 WHEN INSERT_EXIST_TEACHER THEN INSERT INTO ERRO高端網站建設R(TID,ERR) VALUES(teacher_id,'the teacher already exists!'); END my triqqer;
3.執行觸發器 自動執行復制代碼 代碼如下:
CREATE TRIGGER my_trigger1 AFTER INSERT or UPDATE or DE網站建設多少錢LETE on TEACHERS FOR each row; DECLARE info CHAR(10); BEGIN IF inserting THEN --如果進行插入操作 info:='INSERT'; ELSIF updating THEN --如果進行修改操作 info:='Update'; E公司網站建設LSE--如果進行刪除操作 info:='Delete'; END IF; INSERT INTO SQL_INFO VALUES(info); --記錄這次操作信息 END my_trigger1;
4.刪除觸發器復制代碼 代碼如下:
DROP TRIGGER my_trigger;
相關seo網站關鍵詞優化網站建設哪家好。聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-23 ,文章ORACLE PL/SQL 觸發器編程篇介紹建站知識主要講述觸發器,標簽,SQL網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_5649.html