📅  最后修改于: 2023-12-03 15:03:47.227000             🧑  作者: Mango
PL/SQL是一种编程语言,与SQL相结合,可用于编写存储过程、触发器、函数等程序。本文将介绍一些PL/SQL与SQL结合使用的案例。
存储过程可以将一系列的SQL语句打包成一个单独的程序,便于调用和维护。以下示例演示如何创建一个简单的存储过程,查询员工表中的信息。
CREATE OR REPLACE PROCEDURE show_emp_info AS
BEGIN
SELECT *
FROM employees;
END;
触发器可以在数据库中的表被插入、更新或删除时自动执行相应的操作。以下示例演示如何创建一个触发器,在员工表被插入数据时向日志表中添加一条记录。
CREATE OR REPLACE TRIGGER add_emp_log
AFTER INSERT ON employees
FOR EACH ROW
BEGIN
INSERT INTO emp_log (emp_id, emp_name, action)
VALUES (:NEW.emp_id, :NEW.emp_name, 'INSERT');
END;
函数是一段可以被调用的PL/SQL代码块,可以接受输入参数并返回一个结果。以下示例演示如何创建一个函数,计算给定员工ID的平均薪资。
CREATE OR REPLACE FUNCTION get_avg_salary (emp_id IN NUMBER) RETURN NUMBER AS
avg_salary NUMBER(10,2);
BEGIN
SELECT AVG(salary)
INTO avg_salary
FROM salaries
WHERE employee_id = emp_id;
RETURN avg_salary;
END;
以上三个案例展示了PL/SQL与SQL结合使用的常见用法。程序员可以根据具体需求,灵活使用PL/SQL和SQL开发出更多实用的程序。