プライマリ・コンテンツに移動
Oracle® C++ Call Interfaceプログラマーズ・ガイド
12c リリース1 (12.1)
B72464-02
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

Bfileクラス

Bfileクラスは、BFILE型オブジェクトの共通プロパティを定義します。BFILEとは、Oracleデータベースの外のオペレーティング・システム・ファイルに格納されているラージ・バイナリ・ファイルです。Bfileオブジェクトには、BFILEへの論理ポインタが含まれていますが、BFILE自体は含まれていません。

Bfileクラスのメソッドを使用すると、Bfileオブジェクトに関連する特定のタスクを実行できます。

getBfile()setBfile()など、ResultSetクラスとStatementクラスのメソッドによって、SQL BFILEの値にアクセスできます。

NULLBfileオブジェクトに対する有効なメソッドは、setName()isNull()およびoperator=()のみです。

Bfileオブジェクトは、次の方法で初期化できます。

表13-7 Bfileメソッドの概要

メソッド 概要

Bfile()


Bfileクラスのコンストラクタです。

close()


前にオープンしたBFILEをクローズします。

closeStream()


BFILEから取得したストリームをクローズします。

fileExists()


BFILEがあるかどうかを確認します。

getDirAlias()


BFILEのディレクトリ・オブジェクトを戻します。

getFileName()


BFILEの名前を戻します。

getStream()


StreamオブジェクトとしてBFILEからデータを戻します。

getUStringDirAlias()


BFILEに関連付けられているディレクトリ・オブジェクトを含むUStringを戻します。

getUStringFileName()


BFILEに関連付けられているファイル名を含むUStringを戻します。

isInitialized()


Bfileオブジェクトが初期化されているかどうかを確認します。

isNull()


BfileオブジェクトがアトミックNULLかどうかをテストします。

isOpen()


BFILEがオープンしているかどうかを確認します。

length()


BFILEのバイト数を戻します。

open()


BFILEを読取り専用アクセスでオープンします。

operator=()


BFILEロケータをBfileオブジェクトに割り当てます。

operator==()


2つのBfileオブジェクトが等しいかどうかを確認します。

operator!=()


2つのBfileオブジェクトが等しくないかどうかを確認します。

operator==()


BFILEの特定部分をバッファに読み取ります。

setName()


BFILEのディレクトリ・オブジェクトとファイル名を設定します。

setNull()


BfileオブジェクトをアトミックNULLに設定します。


Bfile()

Bfileクラスのコンストラクタです。

構文 説明
Bfile();
NULLBfileオブジェクトを作成します。
Bfile(
   const Connection *connectionp);
未初期化のBfileオブジェクトを構築します。
Bfile(
   const Bfile &srcBfile);
Bfileオブジェクトのコピーを作成します。

パラメータ 説明
connectionp
接続ポインタを指定します。
srcBfile
コピー元のBfileオブジェクトを指定します。

close()

前にオープンしたBfileをクローズします。

構文

void close();

closeStream()

Bfileから取得したストリームをクローズします。

構文

void closeStream(
   Stream *stream); 
パラメータ 説明
stream
クローズするストリームを指定します。

fileExists()

BFILEがあるかどうかを確認します。BFILEがある場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

bool fileExists() const;

getDirAlias()

BFILEに関連付けられているディレクトリ・オブジェクトを含む文字列を戻します。

構文

string getDirAlias() const;

getFileName()

BFILEに関連付けられているファイル名を含む文字列を戻します。

構文

string getFileName() const;

getStream()

BFILEから読み取られたStreamオブジェクトを戻します。ストリームがオープンしている場合、そのBfileオブジェクトで別のストリームをオープンすることはできません。ストリームは、Bfileオブジェクト操作を実行する前にクローズする必要があります。

構文

Stream* getStream(
   unsigned int offset = 1,
   unsigned int amount = 0);
パラメータ 説明
offset
BFILEから読み取るデータの開始位置を指定します。offsetが未指定の場合、データはBLOBの最初から書き込まれます。有効な値は、1以上の数値です。
amount
BFILEから読み取るバイトの合計数を指定します。amount0 (ゼロ)の場合は、入力offsetの位置からBFILEの終わりまでのデータがストリーム・モードで読み取られます。

getUStringDirAlias()

BFILEに関連付けられているディレクトリ・オブジェクトを含むUStringを戻します。UStringオブジェクトにはUTF16キャラクタ・セットが使用されます。BFILEに関連付けられている環境を、UTF16キャラクタセットに関連付ける必要があります。

構文

UString getUStringDirAlias() const;

getUStringFileName()

BFILEに関連付けられているファイル名を含むUStringを戻します。UStringオブジェクトにはUTF16キャラクタセットが使用されます。BFILEに関連付けられている環境を、UTF16キャラクタセットに関連付ける必要があります。

構文

UString getUStringFileName() const;

isInitialized()

Bfileオブジェクトが初期化されているかどうかを確認します。Bfileオブジェクトが初期化されている場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

bool isInitialized() const;

isNull()

BfileオブジェクトがアトミックNULLかどうかをテストします。BfileオブジェクトがアトミックNULLの場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

bool isNull() const;

isOpen()

BFILEがオープンしているかどうかを確認します。BFILEは、このBfileオブジェクトのコールでオープンされた場合にかぎり、オープンされているとみなされます。(異なるBfileオブジェクトに対して関連付けることにより、同一ファイルに対してopen()コールを複数回実行することが可能であるため、別のBfileオブジェクトがこのファイルをオープンしていた可能性もあります)。BFILEがオープンしている場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

bool isOpen() const;

length()

BFILEのバイト数を(ファイル・マーカーの終了も含めて)戻します。

構文

unsigned int length() const;

open()

既存のBFILEを読取り専用アクセスでオープンします。この関数は、1つのBfileオブジェクトに対して初めてコールされたときに有効となります。

構文

void open();

operator=()

Bfileオブジェクトを現行のBfileオブジェクトに割り当てます。ソースのBfileオブジェクトは、このBfileオブジェクトがデータベースに格納されている場合にのみ、このBfileオブジェクトに割り当てられます。

構文

Bfile& operator=(
   const Bfile &srcBfile);
パラメータ 説明
srcBfile
現行のBfileオブジェクトに割り当てるBfileオブジェクトを指定します。

operator==()

2つのBfileオブジェクトを比較して、等しいかどうかを調べます。2つのBfileオブジェクトが同じBFILEを参照している場合、それらのオブジェクトは等しいと判断されます。2つのBfileオブジェクトがNULLの場合は、FALSEを戻します。2つのBfileオブジェクトが等しい場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

bool operator==(
   const Bfile &srcBfile) const;
パラメータ 説明
srcBfile
現行のBfileオブジェクトと比較するBfileオブジェクトを指定します。

operator!=()

2つのBfileオブジェクトを比較して、等しくないかどうかを調べます。2つのBfileオブジェクトが同じBFILEを参照している場合、それらのオブジェクトは等しいと判断されます。2つのBfileオブジェクトが等しくない場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

bool operator!=(
   const Bfile &srcBfile) const;
パラメータ 説明
srcBfile
現行のBfileオブジェクトと比較するBfileオブジェクトを指定します。

read()

BFILEの一部またはすべてを指定されたバッファに読み取り、読み取られたバイト数を戻します。

構文

unsigned int read(
   unsigned int amt,
   unsigned char *buffer,
   unsigned int bufsize,
   unsigned int offset = 1) const;
パラメータ 説明
amt
読み取るバイト数を指定します。有効な値は、1以上の数値です。
buffer
BFILEデータを読み取るバッファを指定します。有効な値は、amt以上の数値です。
buffsize
BFILEデータを読み取るバッファのサイズを指定します。有効な値は、amt以上の数値です。
offset
BFILEから読み取るデータの開始位置を指定します。offsetが未指定の場合、データはBFILEの最初から書き込まれます。

setName()

BFILEのディレクトリ・オブジェクトとファイル名を設定します。

構文 説明
void setName(
   const string &dirAlias,
   const string &fileName);
BFILEのディレクトリ・オブジェクトとファイル名を設定します。
void setName(
   const UString &dirAlias,
   const UString &fileName);
BFILEのディレクトリ・オブジェクトとファイル名を設定します(Unicodeサポート)。クライアントのEnvironmentをOCCIUTIF16モードで初期化する必要があります。

パラメータ 説明
dirAlias
BFILEに関連付けるディレクトリ・オブジェクトを指定します。
fileName
BFILEに関連付けるファイル名を指定します。

setNull()

BfileオブジェクトをアトミックNULLに設定します。

構文

void setNull();