Oracle概念:过程、函数、程序包
2009-06-09 13:15:41 来源:WEB开发网Begin
Select venadd1 into a from vendor_master where vencode=’V002’;
Dbms_output.put_line(a);
ROLLBACK;
END;
/
EXEC P1;
函数:
与过程相似,遵循了相同的规则。
参数传递:只能带有in参数,不能使用out, in out 参数
函数的主要特性是必须返回一个值。
语法:
CREATE [OR REPLACE] FUNCTION function_name (参数)
RETURN datatype
IS | AS
[PRAGMA AUTONOMOUS_TRANACTION;] --声明自主事务处理。
[本地变量声明]
BEGIN
执行语句部分
[EXCEPTION]
错误处理部分
END[name];
/
返回值:
定义函数的时候必须使用RETURN datatype 子句,表示函数要返回的数据类型。
在函数体中的任何地方,都可以使用 RETURN <表达式>返回值,类型要和定义中的相同。
CREATE OR REPLACE
FUNCTION my_func
RETURN varchar2
As
Begin
Return ‘HELLO, WORLD’;
END;
/
调用函数:
用户必须要获取返回值,所以调用时,要声明一个局域变量:
set serveroutput on
declare
l_str varchar2(100) := null;
begin
l_str := my_func;
dbms_output.put_line(l_str);
end;
/
也可以将函数用作其他过程以及函数的IN参数。
Create or replace
Procedure show_it(p varchar2) as
Begin
Dbms_output.put_line(p);
End;
/
exec show_it(my_func);
练习:
编写一个函数ITE,实现:boolean expression ? true_value: false_value
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接