日本語PDF

CREATE LIBRARY

目的

CREATE LIBRARY文を使用すると、オペレーティング・システム共有ライブラリに関連するスキーマ・オブジェクトを作成できます。このスキーマ・オブジェクトの名前は、CREATE FUNCTIONまたはCREATE PROCEDURE文のcall_specで使用できます。また、パッケージまたは型におけるファンクションまたはプロシージャを宣言する際にも使用できます。これによって、SQLおよびPL/SQLは、第三世代言語(3GL)ファンクションおよびプロシージャに対してコールできます。

関連項目:

ファンクションおよびプロシージャの詳細は、「CREATE FUNCTION」および『Oracle Database PL/SQL言語リファレンス』を参照してください。

前提条件

CREATE LIBRARY文は、共有ライブラリおよび動的リンクをサポートするプラットフォーム上でのみ有効です。

自分のスキーマ内にライブラリを作成する場合は、CREATE LIBRARYシステム権限が必要です。他のユーザーのスキーマ内にライブラリを作成する場合は、CREATE ANY LIBRARYシステム権限が必要です。

CREATE FUNCTION文のcall_specでライブラリを使用したり、パッケージまたは型のファンクションを宣言する場合には、そのライブラリに対するEXECUTEオブジェクト権限とCREATE FUNCTIONシステム権限が必要です。CREATE FUNCTION文のcall_specの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

CREATE PROCEDURE文のcall_specでライブラリを使用したり、パッケージまたは型のプロシージャを宣言する場合には、そのライブラリに対するEXECUTEオブジェクト権限とCREATE PROCEDUREシステム権限が必要です。CREATE PROCEDURE文のcall_specの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

call_specで定義したプロシージャまたはファンクション(パッケージまたは型で定義したプロシージャまたはファンクションを含む)を実行するには、そのプロシージャまたはファンクションに対するEXECUTEオブジェクト権限が必要です(ただし、ライブラリに対するEXECUTEオブジェクト権限は不要です)。

構文

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

create_library::=

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

セマンティクス

OR REPLACE

OR REPLACEを指定すると、既存のライブラリを再作成できます。この句を指定した場合、既存のライブラリに付与されているオブジェクト権限を削除、再作成および再付与しなくても、ライブラリの定義を変更できます。

再定義したライブラリに対して権限を付与されていたユーザーは、権限を再付与されなくてもライブラリにアクセスできます。

[ EDITIONABLE | NONEDITIONABLE ]

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

plsql_library_source

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