Bfile
クラスは、BFILE
型オブジェクトの共通プロパティを定義します。BFILE
とは、Oracleデータベースの外のオペレーティング・システム・ファイルに格納されているラージ・バイナリ・ファイルです。Bfile
オブジェクトには、BFILE
への論理ポインタが含まれていますが、BFILE
自体は含まれていません。
Bfile
クラスのメソッドを使用すると、Bfile
オブジェクトに関連する特定のタスクを実行できます。
getBfile()
やsetBfile()
など、ResultSet
クラスとStatement
クラスのメソッドによって、SQL BFILE
の値にアクセスできます。
NULL
のBfile
オブジェクトに対する有効なメソッドは、setName()、isNull()およびoperator=()のみです。
Bfile
オブジェクトは、次の方法で初期化できます。
setName()メソッドを実行します。次に、このBFILE
を表に挿入してBFILE
を変更すると、SELECT...FOR UPDATE
を使用してその内容を取り出すことができます。write()
メソッドによってBFILE
は変更されますが、変更されたデータは、トランザクションがコミットされたときにのみ表にフラッシュされます。INSERT
操作は必要ありません。
初期化したBfile
オブジェクトを割り当てます。
関連項目 LOBの詳細は、『Oracle Database SecureFilesおよびラージ・オブジェクト開発者ガイド』の該当する章を参照してください。 |
メソッド | 概要 |
---|---|
|
|
|
前にオープンした |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2つの |
|
2つの |
|
|
|
|
|
|
Bfile
クラスのコンストラクタです。
構文 | 説明 |
---|---|
Bfile(); |
NULL のBfile オブジェクトを作成します。 |
Bfile( const Connection *connectionp); |
未初期化のBfile オブジェクトを構築します。 |
Bfile( const Bfile &srcBfile); |
Bfile オブジェクトのコピーを作成します。 |
パラメータ | 説明 |
---|---|
connectionp |
接続ポインタを指定します。 |
srcBfile |
コピー元のBfile オブジェクトを指定します。 |
以前にオープンしたBfile
をクローズします。
構文
void close();
Bfile
から取得したストリームをクローズします。
構文
void closeStream( Stream *stream);
パラメータ | 説明 |
---|---|
stream |
クローズするストリームを指定します。 |
BFILE
があるかどうかを確認します。BFILE
がある場合はTRUE
を、それ以外の場合はFALSE
を戻します。
構文
bool fileExists() const;
BFILE
に関連付けられているディレクトリ・オブジェクトを含む文字列を戻します。
構文
string getDirAlias() const;
BFILE
に関連付けられているファイル名を含む文字列を戻します。
構文
string getFileName() const;
BFILE
から読み取られたStream
オブジェクトを戻します。ストリームがオープンしている場合、そのBfile
オブジェクトで別のストリームをオープンすることはできません。ストリームは、Bfile
オブジェクト操作を実行する前にクローズする必要があります。
構文
Stream* getStream( unsigned int offset = 1, unsigned int amount = 0);
パラメータ | 説明 |
---|---|
offset |
BFILE から読み取るデータの開始位置を指定します。offset が未指定の場合、データはBLOB の最初から書き込まれます。有効な値は、1 以上の数値です。 |
amount |
BFILE から読み取るバイトの合計数を指定します。amount が0 (ゼロ)の場合は、入力offset の位置からBFILE の終わりまでのデータがストリーム・モードで読み取られます。 |
BFILE
に関連付けられているディレクトリ・オブジェクトを含むUString
を戻します。UString
オブジェクトにはUTF16キャラクタ・セットが使用されます。BFILE
に関連付けられている環境を、UTF16キャラクタセットに関連付ける必要があります。
構文
UString getUStringDirAlias() const;
BFILE
に関連付けられているファイル名を含むUString
を戻します。UString
オブジェクトにはUTF16キャラクタセットが使用されます。BFILE
に関連付けられている環境を、UTF16キャラクタセットに関連付ける必要があります。
構文
UString getUStringFileName() const;
Bfile
オブジェクトが初期化されているかどうかを確認します。Bfile
オブジェクトが初期化されている場合はTRUE
を、それ以外の場合はFALSE
を戻します。
構文
bool isInitialized() const;
Bfile
オブジェクトがアトミックNULL
かどうかをテストします。Bfile
オブジェクトがアトミックNULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します。
構文
bool isNull() const;
BFILE
がオープンしているかどうかを確認します。BFILE
は、このBfile
オブジェクトでのコールによってオープンされた場合にのみ、オープンしているとみなされます。(別のBfile
オブジェクトがこのファイルをオープンしている場合があります。これは、このファイルを異なる複数のBfile
オブジェクトに関連付けることで、同一のファイルに対して複数のopen()
コールを実行できるためです)。BFILE
がオープンしている場合はTRUE
を、それ以外の場合はFALSE
を戻します。
構文
bool isOpen() const;
BFILE
のバイト数を(ファイル・マーカーの終了も含めて)戻します。
構文
unsigned int length() const;
既存のBFILE
を読込み専用アクセスでオープンします。この関数は、1つのBfile
オブジェクトに対して初めてコールされたときに有効となります。
構文
void open();
Bfile
オブジェクトを現行のBfile
オブジェクトに割り当てます。ソースのBfile
オブジェクトは、このBfile
オブジェクトがデータベースに格納されている場合にのみ、このBfile
オブジェクトに割り当てられます。
構文
Bfile& operator=( const Bfile &srcBfile);
パラメータ | 説明 |
---|---|
srcBfile |
現行のBfile オブジェクトに割り当てるBfile オブジェクトを指定します。 |
2つのBfile
オブジェクトを比較して、等しいかどうかを調べます。2つのBfile
オブジェクトが同じBFILE
を参照している場合、それらのオブジェクトは等しいと判断されます。2つのBfile
オブジェクトがNULL
の場合は、FALSE
を戻します。2つのBfile
オブジェクトが等しい場合はTRUE
を、それ以外の場合はFALSE
を戻します。
構文
bool operator==( const Bfile &srcBfile) const;
パラメータ | 説明 |
---|---|
srcBfile |
現行のBfile オブジェクトと比較するBfile オブジェクトを指定します。 |
2つのBfile
オブジェクトを比較して、等しくないかどうかを調べます。2つのBfile
オブジェクトが同じBFILE
を参照している場合、それらのオブジェクトは等しいと判断されます。2つのBfile
オブジェクトが等しくない場合はTRUE
を、それ以外の場合はFALSE
を戻します。
構文
bool operator!=( const Bfile &srcBfile) const;
パラメータ | 説明 |
---|---|
srcBfile |
現行のBfile オブジェクトと比較するBfile オブジェクトを指定します。 |
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 の最初から書き込まれます。 |
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 に関連付けるファイル名を指定します。 |
Bfile
オブジェクトをアトミックNULL
に設定します。
構文
void setNull();