ページの先頭行へ戻る
Enterprise Postgres 10 アプリケーション開発ガイド
FUJITSU Software

B.6.1 テキストファイルの読込みと書込みを行うディレクトリを登録したい

Oracleデータベース

[Oracle9i以前]
初期化パラメータで以下を設定
   UTL_FILE_DIR='/home/fsep'・・・(1)

[Oracle9.2i以降]
   CREATE DIRECTORY文で設定
   CREATE DIRECTORY DIR AS '/home/fsep';・・・(1)

FUJITSU Enterprise Postgres

INSERT INTO UTL_FILE.UTL_FILE_DIR(dir)
VALUES('/home/fsep');・・・(1)

(1) UTL_FILE_DIR/CREATE DIRECTORY
機能差異
Oracleデータベース

操作対象のディレクトリは、CREATE DIRECTORY文、または初期化パラメータのUTL_FILE_DIRを使用して設定します。

FUJITSU Enterprise Postgres

操作対象のディレクトリは、CREATE DIRECTORY文、または初期化パラメータのUTL_FILE_DIRで設定できません。

移行手順

INSERT文を使用してUTL_FILE.UTL_FILE_DIRテーブルに対象ディレクトリ情報を設定します。なお、この移行作業は、PL/pgSQL関数の実行に先立って、1回実施してください。

  • 初期化パラメータのUTL_FILE_DIRを使用している場合

    1. 初期化パラメータのUTL_FILE_DIRの値(例の'/home/fsep')を確認します。

    2. 1.で確認したディレクトリ名を、INSERT文で指定して実行します。
      - INTO句にはUTL_FILE.UTL_FILE_DIR(dir)を指定します。
      - VALUES句には対象のディレクトリ名を文字列定数(例の'/home/fsep')で指定します。
      - 複数のディレクトリが指定されている場合は、ディレクトリ単位に複数回INSERT文を実行します。

  • CREATE DIRECTORY文を使用している場合

    1. CREATE DIRECTORY文で登録したディレクトリ名(例の'/home/fsep')を確認します。確認は、DBA権限を持つユーザーでSQL*Plusにログインし、show ALL_DIRECTORIES;を実行します。

    2. 1.で確認したディレクトリ名を、INSERT文で指定して実行します。INSERT文の指定方法は初期化パラメータのUTL_FILE_DIRを使用している場合と同じです。