Oracle存储过程-1

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 参数类型)创建

你可能感兴趣的:(Oracle存储过程-1)