oracle创建简单包,Oracle创建程序包是什么?

一、程序包的相关知识

1。定义与说明

a。 相关对象的封装

b。 程序包的各部分

- 程序包规格说明

声明子程序

- 程序包主体

定义子程序

2。使用程序包的优点

- 模块化

- 更轻松的应用程序设计

- 信息隐藏

- 新增功能

- 性能更佳

3。

公有项和私有项的区别

公有项:在程序包说明部分定义的变量、过程、函数

私有项:在程序包主体部分定义的变量、过程、函数

公有项

私有项

可以在程序包之外引用

不能在程序包之外引用

是在程序包规格说明中定义的

是在程序包主体中定义的

用于全局目的

用于局部目的

二、程序包创建说明

1。

程序包规格说明

(1)、使用Create Package命令进行创建

(2)、包含公用对象和类型

(3)、声明类型、常量、变量、异常、游标和子程序

(4)、可以在没有程序包主题的情况下存在

(5)、可以重载

- 程序包中的多个子程序可以具有相同的名称

- 它们的形参是不同的

- 只能位于打包的子程序中

- 限制

a。

如果子程序的参数仅名称或模式不同,则不能重载

b。 不能基于其返回类型重载子程序

2。程序包主体

(1)、使用Create Package body 命令进行创建

(2)、包含子程序和游标的定义

(3)、包含私有声明

(4)、不能在没有程序包规格说明的情况下独立存在

3。

程序包的调用

包名。类型名;

包名。函数名[参数表];

包名。。过程名[参数表];

(1)、 Package-name。type-name

(2)、 Package-name。object-name

(3)、 Package-name。

subprogram-name

其中,Package-name 是程序包名称,type-name是类型名称,

object-name是对象名称,subprogram-name 是子程序名称

--示例

DBMS_output。put_line(Hello);

(4)、对于返回参数是游标类型的调用(如:引用游标)

set autoprint on --打开Sqlplus输出

variable tempCur RefCursor; --定义一个宿主类型的引用游标变量

exec StudentPackage。

ReturnStudent(:tempCur); --执行带有引用游标的过程 注意使用宿主类型的变量前面要加“:”符号

4。 有关子程序和程序包的信息

A。数据字典

User_objects 用于检查对象是否存在

User_source

用于获取对象的代码

B。

包的修改和删除

Alter Package [Body] 包名

Alter Package Body StudentPackage;

Drop Package [Body] 包名

Drop Package Body StudentPackage;。

全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值