您的位置:首页 > 数据库 > Oracle

oracle 函数Function 基本使用

2014-11-11 10:24 281 查看
函数 Function

|-概念:与存储过程类似,遵循相同的规则,只能传递IN类型参数,不能使用OUT类型参数,其主要特征是必须有返回值;

|-函数和存储过程的异同:

|-标识符不同,函数-Function,存储过程-procedure;

|-函数中一般不用传递变量,除非作为调试使用。使用函数名直接返回函数值;

|-存储过程无类型,不能对存储过程名进行赋值,函数可以;

|-都可以处理异常信息;

|-函数只有IN参数,存储过程既可以有IN也可以有 OUT参数;

基本语法:

Create or replace function 函数名(param1 TYPE ...)--参数传递
Return TYPE
IS | AS
Variable1 varchar2(100);--变量声明
...
Begin
Select ename into Variable1 from emp where eptno=param1;
Return (Variable1);--返回值
Exception—异常处理
when no_data_found then
DBMS_output.put_line('no data');
return(null);
end;

--函数的执行-
declare
getresult varchar2(20);--声明一个变量 来接收函数返回值
begin
getresult:=getid(7);--调用 执行函数
DBMS_OUTPUT.PUT_LINE('getresult is='||getresult);--打印到控制台
end;

参考如下:

--函数 getid
create or replace function getid(id number)
return varchar2
as
getexpire varchar2(20);
begin
select expire into getexpire from weibo_account where accountid=id;
return(getexpire);
exception
when no_data_found then
DBMS_output.put_line('no data');
return(null);
end;
--执行
declare
getresult varchar2(20);
begin
getresult:=getid(7);
DBMS_OUTPUT.PUT_LINE('getresult is='||getresult);
end;


参考文献1-
http://zhidao.baidu.com/link?url=6g8F6kmZrcHuzZn1-eCxUHF3VJ0tFDm97ddgs1c6-vTfeNCZQFFaNEbfi2LTA3wYpR0IwmrnduPbKdr8gChld_
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle 函数 Function