--存储过程没有直接的返回值,有间接的返回值 (类似于java中的方法)
create or replace procedure syso(con varchar2)as
begin
dbms_output.put_line(con);
end;
调用过程的三种方式:
1.
begin
[call] syso(33344);
end;
2.sql语句
call syso(45);
3.sql命令
exec syso(54);CREATE [OR REPLACE] PROCEDURE 过程名
[(参数名 [IN|OUT|IN OUT] 数据类型[, …])]
{IS | AS}
[变量声明]
BEGIN
过程的主体
END [过程名];--in: 输入参数。只能获取它的值
--out: 输出参数。只能在过程体中赋值
-- in out: 输入输出参数。可以取它的值,也可以给它赋值。-- 默认存储过程中传入的参数 只能读取值 默认为in
--下面的存储过程报错,将c number 改为 c out number后正确
create or replace procedure res(a number,b number,c number)as
begin
c:=(a*b);
end;
查看有关过程的信息:
数据字典:user_procedures视图。
删除过程:
DROP PROCEDURE 过程名;