数据库基础介绍(2-2)Oracle数据库储过程

一、存储过程创建语法

create or replace procedure 存储过程名(param1 in type,param2 out type) 
as 
    变量1 类型(值范围); --vs_msg   VARCHAR2(4000); 
    变量2 类型(值范围);
Begin
    过程体;
    Exception
        When others then
            Rollback;
End;


注意事项:

1, 存储过程参数不带取值范围,in表示传入,out表示输出,in out即可作输入,又可作输出。

        如果存储过程的参数没有指定存参数传递类型,默认为IN。

2,自定义变量类型可以使用任意Oracle中的合法类型,带取值范围,后面接分号。

3, 过程语句块:从begin 关键字开始为过程的语句块。存储过程的具体逻辑在这里来实现。

       异常处理块:关键字为exception ,为处理语句产生的异常。该部分为可选 。

       结束块:由end关键字结果。

 

二、存储过程的参数传递方式

1,IN 按值传递,并且它不允许在存储过程中被重新赋值。

2,当一个参数被指定为OUT类型时,就算在调用存储过程之前对该参数进行了赋值,在存储过程中该参数的值仍然是null.   

     OUT类型可以理解为按引用传递方式。可以作为存储过程的输出结果,供外部调用者使用。

 

三、存储过程具体逻辑的实现:

1,  在判断语句前最好先用count(*)函数判断是否存在该条操作记录

2,  用select 。。。into。。。给变量赋值

3,  在代码中抛异常用 raise+异常名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Trouble-Solver

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值