在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字段。