Oracle存储过程
1, 存储过程的创建
CREATE OR REPLACE
PROCEDURE 过程名(参数列表)
AS
PLSQL 子程序体
存储过程只能被创建或替换,不能被修改
1.1, 存储过程的调用
1,exec 存储过程名;
2, begin
存储过程名;
End;/
使用命令行执行存储过程
打开输出开关
输出开关
结果:
exec执行存储过程
begin/end调用存储过程
1.2 带参数的存储过程创建
例:为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水
-- 为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水
CREATE OR REPLACE PROCEDURE raisesalary(enoin number)
as
-- 定义一个变量保存涨前的薪水
psal emp.sal%type;
begin
-- 得到员工涨前的薪水
SELECT sal into psal FROM emp WHEREempno=eno;
-- 涨100元工资
UPDATE emp SET sal=sal+100 WHERE empno=eno;
-- 注意:一般不在存储过程或存储函数中commit和rollback
-- 打印涨前 涨后的工资
dbms_output.put_line('涨前:'||psal||' 涨后:'||(psal+100));
end;
/
存储过程调用:
begin
raisesalary(2322);
raisesalary(2311);
commit;
end;
/
带参数的存储过程,需要指定参数是输入参数还是输出参数,输入参数则用(参数名IN 参数类型)来创建,同理,输出参数用(参数名OUT 参数类型)创建
作者:zq木偶人
链接:https://www.jianshu.com/p/25173462ecce
共同学习,写下你的评论
评论加载中...
作者其他优质文章