PL/SQL中package的创建
创建包 www.2cto.com
————–
/*
用于逻辑组合相关的过程和函数,他由包规范和包体两部分组成,
包规范用语定义公用的常量,变量,过程和函数,
包体则用于实现包规范中的过程和函数
*/
–创建包 www.2cto.com
CREATE PACKAGE emp_pkg IS
–包中用于存储函数和过程
PROCEDURE update_sal(pname VARCHAR2,newsal NUMBER);
FUNCTION annual_income(pname VARCHAR2) RETURN NUMBER;
END;
/
———————–
创建包体
——————
/*
创建包的包体 www.2cto.com
*oracle账号/
CREATE PACKAGE BODY emp_pkg IS
–存储过程
PROCEDURE update_sal(pname VARCHAR2,newsal NUMBER)
IS
BEGIN
UPDATE emp SET sal= newsal
WHERE lower(ename)= lower(pname);
END;
–存储函数
FUNCTION annual_income(pname VARCHAR2) RETURN NUMBER
IS
–用于返回这个变量
annual_salary NUMBER(7,2);
BEGIN
SELECT sal*12+nvl(comm,0) INTO annual_salary
–lower 是用于比较String相等.
FROM emp WHERE lower(ename)= lower(pname);
–返回值
RETURN annual_salary;
END;
END;
/