ホームページ  >  記事  >  データベース  >  Oracle中包的使用

Oracle中包的使用

WBOY
WBOYオリジナル
2016-06-07 16:08:131299ブラウズ

使用程序包主要是为了实现程序的模块化,程序包可以将相关的存储过程,函数,变量,常量和游标等PL/SQL程序组合在一起,通过这种

使用程序包主要是为了实现程序的模块化,程序包可以将相关的存储过程,函数,变量,常量和游标等PL/SQL程序组合在一起,通过这种方式可以构供程序人员重用的代码库。另外,当首次调用程序包中的存储过程或函数等元素是,,Oracle会将整个程序包调入内存,在下次调用程序包中的元素时,Oracle就可以之际从内存中读取,从而提程序的运行效率。

程序包主要包括两个部分:包规范和包体。其中,

  • 包规范用于列出包中可用的存储过程、函数和游标等元素条目(不含这些元素的实际代码),这些条目属于公有项目,可以供所有的数据库用户访问。

  • 包体中则包含了元素的实际代码,同时,也可以在包体中创建规范中没有提到的项目,那么这些项目都属于私有项目,只能在包体中使用。

  • 创建包规范

    创建包规范需要使用CREATE PACKAGE 语句,其简要语法如下

    package_name; - package_name 创建的包名 - package_specification 用于列出用户可以使用的公共存储过程、函数、类型和对象 创建包体

    创建包体需要使用CREATE PACKAGE BODY语句,并且在创建时需要指定已创建的包,其简要语法如下:

    CREATE [OR REPLACE] PACKAGE BODY package_name {IS|AS} package_body END package_name; 实例

    具体实例如下:
    1.创建包规范

    PACKAGE common_pkg ) RETURN NUMBER; END common_pkg;

    2.创建包体

    PACKAGE BODY common_pkg ) RETURN RETURN (common_pkg;

    调用包中的函数,

    SELECT common_pkg.tax(sal) FROM emp;

    本文永久更新链接地址:

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。