package 是一组相关存储过程、函数、变量、常量、游标等PL/SQL 程序的组合,具有
面向对象的特点,可以对PL/SQL 程序设计元素进行封装。package 中的函数具有统一性,
创建、删除、修改都统一进行。
package 包含包头(Package Specification)和Package Body 两个部分,其中包头所包含
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
721
的声明可以被外部函数、匿名块等访问,
而在包体中包含的声明不能被外部函数、
匿名块等
访问,只能被包体内函数和存储过程等访问。
PACKAGE 的创建请参见CREATE PACKAGE。
须知:- 跨PACKAGE 变量不支持作为FOR 循环中控制变量使用。- PACKAGE
中定义类型不支持删除、修改等操作,也不支持定义表。
-
不支持以
SCHEMA.PACKAGE.CUROSR 的形式引用cursor 变量。- 带参数的CURSOR 仅支持在当
前PACKAGE 内打开。
17 自治事务
自治事务(Autonomous Transaction),在主事务执行过程中新启的独立的事务。自治
事务的提交和回滚不会影响主事务已提交的数据,同时自治事务也不受主事务影响。
自治事务在存储过程、函数和匿名块中定义,用
PRAGMA
AUTONOMOUS_TRANSACTION 关键字来声明。