プライマリ・コンテンツに移動
Oracle® Database SQL言語リファレンス
12cリリース1 (12.1)
B71278-13
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

CREATE PACKAGE

用途

パッケージはPL/SQLを使用して定義されます。このため、この項では一般的な情報について説明します。構文およびセマンティクスの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

CREATE PACKAGE文を使用すると、ストアド・パッケージの仕様部を作成できます。パッケージとは、関連するプロシージャ、ファンクション、およびデータベース上にまとめて格納されるその他のプログラム・オブジェクトの集合のことです。パッケージ仕様部でこれらのオブジェクトを宣言します。後で指定するパッケージ本体では、これらのオブジェクトを定義します。


関連項目:

  • パッケージ実装の指定については、「CREATE PACKAGE BODY」を参照してください。

  • スタンドアロン・ファンクションおよびプロシージャの作成については、「CREATE FUNCTION」および「CREATE PROCEDURE」を参照してください。

  • パッケージの変更および削除については、「ALTER PACKAGE」および「DROP PACKAGE」を参照してください。

  • パッケージの説明と使用方法の詳細は、『Oracle Database開発ガイド』『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。


前提条件

自分のスキーマ内にパッケージを作成または再作成する場合は、CREATE PROCEDUREシステム権限が必要です。他のユーザーのスキーマ内にパッケージを作成または再作成する場合は、CREATE ANY PROCEDUREシステム権限が必要です。

Oracle Databaseのプリコンパイラ・プログラム内にCREATE PACKAGE文を埋め込む場合、キーワードEND-EXECに続けて、各言語の埋込みSQL文の終了記号を記述して文を終了する必要があります。


関連項目:

詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

構文

パッケージはPL/SQLを使用して定義されます。このため、このマニュアルの構文図ではSQLキーワードのみを示します。PL/SQLの構文、セマンティクスおよび例については、『Oracle Database PL/SQL言語リファレンス』を参照してください。

create_package::=

create_package.gifの説明が続きます。
「図create_package.gif」の説明

(plsql_package_source: 『Oracle Database PL/SQL言語リファレンス』を参照。)

セマンティクス

OR REPLACE

OR REPLACEを指定すると、既存のパッケージ仕様部を再作成できます。この句を指定した場合、パッケージに対して付与されていたオブジェクト権限を削除、再作成および再付与しなくても、既存のパッケージの仕様部を変更できます。パッケージ仕様部を変更した場合、その仕様部は自動的に再コンパイルされます。

再定義したパッケージに対して権限が付与されていたユーザーは、権限が再付与されなくてもそのパッケージにアクセスできます。

ファンクション索引がパッケージに依存している場合、索引にDISABLEDのマークが付きます。


関連項目:

パッケージ仕様部の再コンパイルについては、「ALTER PACKAGE」を参照してください。

[ EDITIONABLE | NONEDITIONABLE ]

この句を使用すると、schemaのスキーマ・オブジェクト・タイプPACKAGEのエディショニングが有効化されたときに、そのパッケージをエディション・オブジェクトにするか非エディション・オブジェクトにするかを指定できます。デフォルトは、EDITIONABLEです。エディション・オブジェクトと非エディション・オブジェクトの詳細は、『Oracle Database開発ガイド』を参照してください。

plsql_package_source

plsql_package_sourceの構文、セマンティクスおよび例については、『Oracle Database PL/SQL言語リファレンス』を参照してください。