在Oracle數據庫中,創建觸發器需要使用CREATE TRIGGER
語句。以下是一個簡單的示例,說明如何創建一個觸發器。
首先,我們需要創建一個表,用于存儲員工信息:
CREATE TABLE employees (
id NUMBER PRIMARY KEY,
name VARCHAR2(50),
salary NUMBER(10, 2)
);
接下來,我們創建一個觸發器,當向employees
表插入新記錄時,自動更新salary
字段,將其設置為原始值的1.1倍:
CREATE OR REPLACE TRIGGER update_salary_trigger
BEFORE INSERT ON employees
FOR EACH ROW
BEGIN
:new.salary := :new.salary * 1.1;
END;
/
在這個示例中,我們使用了以下關鍵字和語法:
CREATE OR REPLACE TRIGGER
:創建一個新的觸發器,如果已經存在同名觸發器,則替換它。update_salary_trigger
:觸發器的名稱。BEFORE INSERT
:指定觸發器在插入操作之前觸發。ON employees
:指定觸發器與employees
表關聯。FOR EACH ROW
:指定觸發器對每一行記錄都進行處理。BEGIN...END
:包含觸發器的執行代碼。:new.salary
:表示新插入記錄的salary
字段。現在,每當向employees
表插入新記錄時,觸發器update_salary_trigger
都會自動更新salary
字段。