ディレクトリ・オブジェクトの管理
用途
- ディレクトリ・オブジェクトは、外部バイナリ・ファイルLOB(BFILE)および外部表データが存在するサーバー・ファイル・システム上のディレクトリの別名を示す。
- PL/SQLコードおよびOCIコールでBFILEを参照する際、管理の汎用性のために、オペレーティング・システムのパス名をハード・エンコードせずにディレクトリ名を使用できる。
権限付与
- ディレクトリを作成する場合は、CREATE ANY DIRECTORYシステム権限が必要である。
- ディレクトリを作成する場合、そのディレクトリに対するREADオブジェクト権限およびWRITEオブジェクト権限が自動的に付与され、他のユーザーおよびロールにこれらの権限を付与できる。
ディレクトリ・オブジェクトの作成
CREATE {OR REPLACE} DIRECTORY directory_object_name AS 'path_name'
- directory_object_nameの最大長は30バイト。
- ディレクトリ・オブジェクトは、スキーマ名で修飾できない。
- 指定したディレクトリが実際に存在するかどうかは検証される。
- パス名の終わりにスラッシュを指定する必要はない。
datapump_dirというディレクトリ・オブジェクト作成
PROD(SYS)>CREATE OR REPLACE DIRECTORY DATAPUMP_DIR AS '/U01/APP/ORACLE/DATAPUMP_DIR';
ディレクトリが作成されました。
--# TOMに読取/書込み権限を付与する。
PROD(SYS)>GRANT READ,WRITE ON DIRECTORY DATAPUMP_DIR TO TOM;
権限付与が成功しました。
PROD(SYS)>
ディレクトリ・オブジェクトの削除
DROP DIRECTORY directory_object_name
PROD(SYS)>DROP DIRECTORY DATAPUMP_DIR;
ディレクトリが削除されました。
PROD(SYS)>
ディレクトリ・オブジェクトの情報表示
page revision: 11, last edited: 18 Nov 2009 14:14