plSQl function PROCEDURE 使用实例

来源:互联网 发布:淘宝开放平台登录授权 编辑:程序博客网 时间:2024/06/15 14:18



Function 的使用

参数即为输入参数

使用return返回参数

格式CREATE OR REPLACE FUNCTION+函数名+(参数+类型)+RETURN 类型 IS+名称+类型+BEGIN+END 函数名;

CREATE ORREPLACEFUNCTION get_employee_salary(empoyee_idNUMBER)RETURNNUMBER IS

  salary NUMBER;

BEGIN

  SELECT e.salary

    INTO salary

    FROM employees e

   WHERE e.employee_id = empoyee_id;

  RETURN(salary);

EXCEPTION

  WHEN no_data_found THEN

    RETURN(-1);

  WHEN OTHERSTHEN

    RETURN(0);

 

END get_employee_salary;


 PROCEDURE 使用

输入参数使用in关键字标识

输出参数使用out参数表示

格式 CREATE OR REPLACE PROCEDURE+名称+参数(名称+in/out+类型)+BEGIN+程序体+END 名称;

CREATE ORREPLACEPROCEDURE update_employee_salary(empoyee_id   INNUMBER,

                                                  employee_name OUT VARCHAR2,

                                                  salary        OUT VARCHAR2)IS

BEGIN

  BEGIN

    SELECT e.first_name || ' ' || e.last_name employee_name,

           e.salary

      INTO employee_name,

           salary

      FROM employees e

     WHERE e.employee_id = empoyee_id;

  EXCEPTION

    WHEN no_data_found THEN

      employee_name := 'E';

      salary        := 0;

    WHEN OTHERS THEN

      employee_name := 'N';

      salary        := 0;

  END;

  UPDATE employees e

     SET e.salary = e.salary + 2000

   WHERE e.employee_id = empoyee_id;

ENDupdate_employee_salary;

 



原创粉丝点击