函数[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 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦