oracle 函数function语法及简单实例

1548年前 (2018-06-12)oracle数据库7069

函数调用限制
1、SQL语句中只能调用存储函数(服务器端),而不能调用客户端的函数
2、SQL只能调用带有输入参数,不能带有输出,输入输出函数
3、SQL不能使用PL/SQL的特有数据类型(boolean,table,record等)
4、SQL语句中调用的函数不能包含INSERT,UPDATE和DELETE语句

1.function函数的语法:

  create or replace function function_name (  
     argu1 [mode1] datatype1, --定义参数变量mode: in or out 
     argu2 [mode2] datatype2 --定义参数变量  
 ) return datatype --定义返回的数据类型  
is    
begin  
end;

执行:

var v1 varchar2(100)   
exec :v1:=function_name 
或
select  function_name   from dual;

2.不带任何参数的定义

create or replace function get_user   
return varchar2   
is   
Result varchar2(50); --定义变量  
begin   
select username into Result from user_users;   
return(Result); --返回值  
end get_user;

3.带有in参数的

create or replace function GET_POIALL(  
empname in varchar2  
) return number   
is   
Result number;   
begin   
select sal into Result from emp where ename=empname;   
return(Result);   
end;

执行:

SQL> var sal number   
SQL> exec :sal:=get_sal('scott');  
或者
 select  GET_POIALL('0')  from dual;

4.带out参数的

create or replace function get_info(  
e_name varchar2,  
job out varchar2  
) return number   
Is  
Result number;   
begin   
select sal,job into Result,job from emp where ename=e_name;   
return(Result);   
end;

执行:

SQL> var job varchar2(20)   
SQL> var dname varchar2(20)   
SQL> exec :dname:=get_info('SCOTT',:job)


本文原创,转载必追究版权。

分享给朋友:

相关文章

Oracle 数据库cmd命令备份

 //导出exp wsbspt/wsbspt@192.168.1.101/wsbs file=D:/wsbspt.dmp log=D:/wsbspt.txt//导入imp &nbs...

freeMarker 截取字符串(操作字符串函数 )

<#if c.proSummary!?length gt 25>  <!-- 如果长度 >25 截取25个字-->    ...

谈话让别人舒服的程度,决定你成功的高度

职场上,有这样两种截然相反的人:有人生怕别人舒服,尽量让别人不舒服,而只要自己舒服就行;还有一类人生怕别人不舒服,尽量让别人舒服,哪怕委屈自己。猎头公司猎聘的老总有几十万年薪的,也有几百万的,甚至有过...

dwz +jfinal 批量多文件上传 实例

页面部分:<link href="${root}/style/dwz/uploadify/css/uploadify.css" rel="sty...

office 2010安装、激活、激活工具下载

office 2010安装、激活、激活工具下载

 首先下载好工具包(包括office 2010安装程序、激活工具及Microsoft .NET Framework 4.0),点击工具包下载进行下载;安装好office 2010。如果是wi...

jfinal 定时任务

1、去quartz官网下载 定时任务jar包(http://www.quartz-scheduler.org/)quartz-*.*.*.jar2、创建定时任务:public class SetAre...

评论列表

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。