Home  >  Article  >  Database  >  Oracle存储过程【带输入输出参数】

Oracle存储过程【带输入输出参数】

WBOY
WBOYOriginal
2016-06-07 15:25:441626browse

create or replace procedure proc_emp(eno in number,sal out number)--带输入输出参数的存储过程 as emp_records emp%rowtype;--声明一个记录类型用来存储结果集 begin select * into emp_records from emp where empno=eno;--把查询结果赋值个记录类型 sa

 

create or replace procedure proc_emp(eno in number,sal out number)--带输入输出参数的存储过程

as

emp_records emp%rowtype;--声明一个记录类型用来存储结果集

begin

       select * into emp_records from emp where empno=eno;--把查询结果赋值个记录类型

       sal:=emp_records.sal;--为输出参数赋值

      -- dbms_output.put_line(emp_records.ename||emp_records.sal);

end;

--执行存储过程

declare 

emp_no emp.empno%type;--声明一个员工编号的变量

emp_sal emp.sal%type;--声明一个员工薪水的变量

begin

    emp_no:='&empno';--从控制太输入参数

    proc_emp(emp_no,emp_sal);--调用存储过程并传入参数

    dbms_output.put_line(emp_sal);--显示输出参数

end;

 

 

总结:or代表是可选项,注意参数类型不要声明长度大小。记录类型的声明用rowtype声明。

如果用输出参数的时候要给输出参数赋值,否则将看不到结果。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn