【Oracle】带参数的存储过程

本文介绍了如何在Oracle数据库中创建及使用存储过程,并演示了如何设置参数的默认值。通过实例展示了存储过程的基本语法,包括创建、传参执行及默认值设定等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我在参加【中原银行】的【极客大赛】,请大家支持下我的队伍,给【农夫种豆队】投上您宝贵的一票(微信,无需注册,无需填写手机号码,点击一下即可),谢谢大家;

1、创建存储过程

create procedure updatedemo  (ageparam IN number)
as
begin
update demo set age = ageparam;
commit;
end;
/

2、传参执行

begin
updatedemo(20);
end;
/

3、为存储过程设置参数的默认值

3.1创建存储过程

create or replace procedure InsertDemo(id in char,name in char default '路人',age in char default '30',sex in char) 
as
begin
insert into demo values(id,name,age,sex);
commit;
end;
/

3.2、运行该存储过程

begin
InsertDemo('5','孙尚香',null,'female');
end;
/

注意1

这里我出现了一个问题,就是我的表的字段是id,name,sex,age;但是我定义的存储过程是id,
name,age,sex;最后两个字段的位置跟表结构不一样;插入的时候,插入的核心是存储过程里的

insert into demo values(id,name,age,sex);

这句话,然后传参的顺序丝毫不会影响到insert表的顺醋,插入式,系统会将你的变量id,name
age,sex插入到字段id,name,age,sex中,这里要注意,前4个是参数,后4个是字段;

注意2

当存储过程定义了默认值后,表也定义了默认值,表的默认值优先级高于存储过程;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

陶洲川

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

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

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

打赏作者

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

抵扣说明:

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

余额充值