Oracle存储过程
现在的项目比较紧,加上自己也比较懒,实在是“没时间”写啊,呵呵,昨天看到一篇挺好的Oracle存储过程的例子,正好最近要用,转过来大家一起分享一下,谢谢(晨光映霞),原作地址:http://blog.csdn.net/xuyabao/archive/2008/03/20/2200205.aspx。
--------------------自定义函数开始--------------------
CREATE OR REPLACE FUNCTION fn_WFTemplateIDGet
(
TemplateCategoryID NUMBER,
OrganID NUMBER,
TemplateMode NUMBER
)
RETURN NUMBER
IS
TemplateID NUMBER;
ItemCount NUMBER;
BEGIN
--取模板中指定机构,指定分类的工作流模板记录
SELECT COUNT(*) INTO ItemCount
from t_WFTemplate
WHERE f_OrganID = OrganID AND f_TemplateCategoryID = TemplateCategoryID;
IF ItemCount = 1 THEN
SELECT f_TemplateID INTO TemplateID
from t_WFTemplate
WHERE f_OrganID = OrganID AND f_TemplateCategoryID = TemplateCategoryID;
ELSE
TemplateID := 0;
END IF;
RETURN(TemplateID);
END fn_WFTemplateIDGet;
--------------------自定义函数结束--------------------
--------------------包头开始--------------------
CREATE OR REPLACE PACKAGE pkg_TEMP is
TYPE curRecordset IS REF CURSOR;
--功能:由人员获取数据
PROCEDURE up_ModuleShowByEmployeeID
(
EmployeeID NUMBER,
objRs OUT curRecordset
);
END pkg_TEMP;
--------------------包头结束--------------------
--------------------包体开始--------------------
CREATE OR REPLACE PACKAGE BODY pkg_TEMP is
--功能:由人员获取数据
相关文档:
需要权限:
grant references on test_sys to user_1;
or
grant all on test_sys to user_1;
测试:
sys用户下:
SQL> create user user_1 identified by user_1;
用户已创建。
SQL> grant dba to user_1;
授权成功。
SQL> create table test_sys(pk_col varchar2(5))
2&nbs ......
1. 游标: 容器,存储SQL语句影响行数。
2. 游标类型: 隐式游标,显示游标,REF游标。其中,隐式游标和显示游标属于静态游标(运行前将游标与SQL语句关联),REF游标属于动态游标(运行时将游标与SQL语句关联)。
3. ......
1、默认事例:
用户名:scott密码:tiger 主机字符串:本机可以为空
2、启动方法:
运行:sqlplus scott/tiger@lhd
3、SQLPLUS基本命令:
Desc:显示表、视图结构 desc 表名,视图
List:列出SQL缓冲区区中的一行或多行命令语句
Exit:退出
4、常用的数据字典(三种前缀:USER,ALL,DBA)
USER_TABL ......
oracle 怎么来遍历一个树,相比较其他方法,oracle的connect语法更能很便利的解决问题。
语法格式:
select ...
from ...
start with...
connect by prior expr=expr
order siblings by ..
start with 的功能类似于where,指明从哪个分支开始便利;
connect by 指明父节点和子节点地连接方式,关键字prior放在父节 ......