ヘッダーをスキップ
Oracle® Objects for OLE開発者ガイド
11gリリース2 (11.2) for Microsoft Windows
B58887-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

CopyFromFile(OraLOB)メソッド

説明

ローカル・ファイルの一部またはすべてをこのオブジェクトの内部LOB値にロードまたはコピーします。

使用方法

OraBlob.CopyFromFile "blob.bmp" amount, offset, chunksize 
OraClob.CopyFromFile "clob.txt" amount, offset, chunksize 

引数

このメソッドの引数は、次のとおりです。

引数 説明
[in] filename 読み取るファイルの絶対パスとファイル名を指定する文字列。
[in] [オプション] amount コピーする最大バイト数を指定するためのInteger。デフォルト値は、総ファイル・サイズです。
[in] [オプション] offset このオブジェクトのBLOBまたはCLOB値の絶対オフセットを指定するためのIntegerで、OraBLOBまたはOraBFILEの場合はバイト数、OraCLOBの場合は文字数を示します。デフォルト値は1です。
[in] [オプション] chunksize 各読込み操作に対するサイズをバイトで指定するためのIntegerchunksizeパラメータが設定されていないか0の場合、amount引数の値が使用され、その量すべてが1つのチャンクで転送されます。

備考

このメソッドのコール前に、行レベルまたはオブジェクト・レベルでロックを取得する必要があります。

ファイルは、NLS_LANG設定と同じ書式である必要があります。


注意:

WriteCopyFromFileなど、LOBのメソッドを使用したLOBの操作では、古いデータと比較して新しいデータが短い場合、LOBオブジェクトは自動的に切り捨てられません。LOBオブジェクトを新しいデータのサイズに縮小するには、Trim(OraLOB)メソッドを使用します。

例: CopyFromFileメソッドの使用方法

この例では、CopyFromFileメソッドの使用方法を示します。

データベースにPART表があり、その表に有効なLOBデータが含まれていることを確認してください。また、「LOBデータ型の例で使用されているスキーマ・オブジェクト」の説明に従ってOraLOBスキーマ・オブジェクトをインストールしていることを確認してください。

Dim OraSession As OraSession 
Dim OraDatabase As OraDatabase 
Dim PartImage as OraBLOB 
 
'Create the OraSession Object. 
Set OraSession = CreateObject("OracleInProcServer.XOraSession") 
 
'Create the OraDatabase Object by opening a connection to Oracle. 
Set OraDatabase = OraSession.OpenDatabase("ExampleDb", "scott/tiger", 0&)
 
'Create a Dynaset containing a BLOB and a CLOB column 
set part = OraDatabase.CreateDynaset ("select * from part where" & _
                "part_id = 1234",0) 
set PartImage = part.Fields("part_image").Value 
 
'copy the entire content of partimage.jpg file to LOBS 
part.Edit 
PartImage.CopyFromFile "partimage.jpg" 
part.Update 

関連項目:

Trim(OraLOB)メソッド