構文
用途
BFILENAME
は、サーバーのファイル・システムの物理LOBバイナリ・ファイルに対応付けられているBFILE
ロケータを戻します。
'directory
'は、実際にファイルが存在するサーバーのファイル・システム上のフルパス名に対する別名となるデータベース・オブジェクトです。
'filename
'は、サーバーのファイル・システムにあるファイルの名前です。
SQL文、PL/SQL文、DBMS_LOB
パッケージまたはOCIの操作で、これらをBFILENAME
への引数として使用するには、まずディレクトリ・オブジェクトを作成し、BFILE
値を物理ファイルと対応付ける必要があります。
次の2つの方法で、このファンクションを使用できます。
DML文でBFILE
列を初期化する場合
プログラム・インタフェースで、BFILE
ロケータに値を割り当てることによってBFILE
データにアクセスする場合
ディレクトリの引数の大/小文字は区別されます。データ・ディクショナリ内に存在する名前と同じ名前でディレクトリ・オブジェクト名を指定しているかを確認する必要があります。たとえば、CREATE
DIRECTORY
文で、大/小文字を組み合せた識別子を引用符で囲んで使用してAdmin
ディレクトリ・オブジェクトを作成すると、BFILENAME
ファンクションを使用する場合、ディレクトリ・オブジェクトを'Admin'
として指定する必要があります。filename引数は、ご使用のオペレーティング・システムの大/小文字および記号の表記規則に従って指定する必要があります。
関連項目:
|
例
次の例では、サンプル表pm.print_media
に行を挿入します。BFILENAME
ファンクションを使用して、/demo/schema/product_media
ディレクトリにある、サーバーのファイル・システムのバイナリ・ファイルを識別します。次の例では、PM
スキーマでのディレクトリのデータベース・オブジェクトmedia_dir
の作成方法を示します。
CREATE DIRECTORY media_dir AS '/demo/schema/product_media'; INSERT INTO print_media (product_id, ad_id, ad_graphic) VALUES (3000, 31001, BFILENAME('MEDIA_DIR', 'modem_comp_ad.gif'));