最近在对数据库进行从sqlSERVER改造到ORACLE过程中遇到了一个头疼的问题,sqlSERVER
可以返回一个结构化的数据集,ORACLE函数不行,要执行函数(含返回值),函数过程中将语句插进事务性临时表里再读取临时表
找到如下资料,执行ORACLE函数的方法:
1.在定义函数时:如果有参数,则参数可有类型但是不加长度。
2.在执行函数: var/variable var_name var_type(如果数据类型是number则没有长度,如果数据类型是varchar2,则可以写长度)
call(此处不能用exec) 函数名(参数) into :var_name;
举例:sql>var dd varchar2
sql>call get_sal(7788) into :dd;
执行oracle函数的四种方法:
首先,创建函数fun_stu:
create or replace function fun_stu(iname varchar2) return varchar2 is
r varchar2(20);
begin
select s.value into r from student s where s.name =iname;
return (r);
end;
1.方法一
输入以下语句
sql> variable a varchar2(20)
sql> begin
:a:=fun_stu(‘ba’);
end;
/
输出结果:
PL/sql procedure successfully completed
a
———
A
输出变量的值
sql> print a
a
———
A
2.方法二
输入以下语句
sql> call fun_stu(‘ba’) into :a;
输出结果
Method called
a
———
A
输出变量值
sql> print a
a
———
A
3.方法三
输入以下语句
sql> execute :a:=fun_stu(‘BA’);
输出结果
PL/sql procedure successfully completed
a
———
C
输出变量值
sql> print a
a
———
C
4.方法四
select fun_stu(‘ba’) from dual;
输出结果
A
附加问题: PLsql 命令窗口执行语句按回车有效,执行无效?
转载来源:https://wenku.baidu.com/view/b6baae2a7375a417866f8f96.html
总结
以上是编程之家为你收集整理的执行oracle函数的四种方法全部内容,希望文章能够帮你解决执行oracle函数的四种方法所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
今天的文章oracle 方法函数,执行oracle函数的四种方法分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/12789.html