为了账号安全,请及时绑定邮箱和手机立即绑定

函数和存过的创建调用

标签:
算法

函数[in out 参数]

复制代码

--函数[in out 参数]create or replace function get_test(m_id in number, str1 out varchar2) --参数不需要类型长度  return varchar2 is str2 varchar2(10); --变量需要类型长度begin  select t.ename, t.job    into str1, str2    from scott.emp t   where t.empno = m_id;  return str2;end get_test;--调用函数[位置表示法]declare  s1 varchar2(10);  s2 varchar2(10);  s3 number(30) default 7521;  --default 默认值begin  s3:=7566;  s2 := get_test(s3, s1);--参数次序  dbms_output.put_line(s1 || '  ' || s2);end;--调用函数 [名称表示法]declare  s1 varchar2(10);  s2 varchar2(10);begin  s2 := get_test( str1=>s1,m_id=>7521);  --名称的对应关系,次序并不重要  dbms_output.put_line(s1 || '  ' || s2);end;

复制代码

 存储过程1

复制代码

--存储过程1create or replace procedure get_test1(m_id in number, str1 out varchar2) --参数不需要类型长度 isbegin  select t.ename into str1 from scott.emp t where t.empno = m_id;end get_test1;--调用declare  s1 varchar2(100);begin  get_test1(7521, s1);  dbms_output.put_line(s1);end;

复制代码

 存储过程2

复制代码

create or replace procedure get_test2(m_id in number) is  str1 varchar2(100);  --变量在is后面定义begin  select t.ename into str1 from scott.emp t where t.empno = m_id;  dbms_output.put_line(str1);end;--sql窗口执行begin  get_test2(7521);end;--在命令窗口的执行EXECUTE get_test2(7521);

复制代码

 

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消