加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

执行oracle函数的四种方法

发布时间:2020-12-12 14:53:07 所属栏目:百科 来源:网络整理
导读:最近在对数据库进行从SQLSERVER改造到ORACLE过程中遇到了一个头疼的问题,SQLSERVER 可以返回一个结构化的数据集,ORACLE函数不行,要执行函数(含返回值),函数过程中将语句插进事务性临时表里再读取临时表 找到如下资料,执行ORACLE函数的方法: 1.在定义

最近在对数据库进行从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.方法四

使用sql语句调用

select fun_stu('ba') from dual;

输出结果

A

附加问题: PLSQL 命令窗口执行语句按回车有效,执行无效?


转载来源:https://wenku.baidu.com/view/b6baae2a7375a417866f8f96.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读