Oracle® C++ Call Interface Programmer's Guide, 11g Release 2 (11.2) Part Number E10764-02 |
|
|
PDF · Mobi · ePub |
The Bfile
class defines the common properties of objects of type BFILE
. A BFILE
is a large binary file stored in an operating system file outside of the Oracle database. A Bfile
object contains a logical pointer to a BFILE
, not the BFILE
itself.
Methods of the Bfile
class enable you to perform specific tasks related to Bfile
objects.
Methods of the ResultSet
and Statement
classes, such as getBfile()
and setBfile()
, enable you to access an SQL BFILE
value.
The only methods valid on a NULL
Bfile
object are setName(), isNull(), and operator=().
A Bfile
object can be initialized by:
The setName() method. The BFILE
can then be modified by inserting this BFILE
into the table and then retrieving it using SELECT...FOR UPDATE
. The write()
method modifies the BFILE
; however, the modified data is flushed to the table only when the transaction is committed. Note that an INSERT
operation is not required.
Assigning an initialized Bfile
object to it.
See Also:
In-depth discussion of LOBs in the introductory chapter of Oracle Database SecureFiles and Large Objects Developer's Guide,LNCPP20601Table 13-7 Summary of Bfile Methods
Method | Summary |
---|---|
|
|
Closes a previously opened |
|
Closes the stream obtained from the |
|
Tests whether the |
|
Returns the directory object of the |
|
Returns the name of the |
|
Returns data from the |
|
Returns a |
|
Returns a |
|
Tests whether the |
|
Tests whether the |
|
Tests whether the |
|
Returns the number of bytes in the |
|
Opens the |
|
Assigns a |
|
Tests whether two |
|
Tests whether two |
|
Reads a specified portion of the |
|
Sets the directory object and file name of the |
|
Sets the |
Bfile
class constructor.
Syntax | Description |
---|---|
Bfile(); |
Creates a NULL Bfile object. |
Bfile( const Connection *connectionp); |
Creates an uninitialized Bfile object. |
Bfile( const Bfile &srcBfile); |
Creates a copy of a Bfile object. |
Parameter | Description |
---|---|
connectionp |
The connection pointer |
srcBfile |
The source Bfile object |
Closes a previously opened Bfile
.
LNCPP20604Syntax
void close();LNCPP20605
Closes the stream obtained from the Bfile
.
LNCPP20606Syntax
void closeStream( Stream *stream);
Parameter | Description |
---|---|
stream |
The stream to be closed. |
Tests whether the BFILE
exists. If the BFILE
exists, then TRUE
is returned; otherwise, FALSE
is returned.
LNCPP20608Syntax
bool fileExists() const;LNCPP20609
Returns a string containing the directory object associated with the BFILE
.
LNCPP20610Syntax
string getDirAlias() const;LNCPP20611
Returns a string containing the file name associated with the BFILE
.
LNCPP20612Syntax
string getFileName() const;LNCPP20613
Returns a Stream
object read from the BFILE
. If a stream is open, it is disallowed to open another stream on the Bfile
object. The stream must be closed before performing any Bfile
object operations.
LNCPP20614Syntax
Stream* getStream( unsigned int offset = 1, unsigned int amount = 0);
Parameter | Description |
---|---|
offset |
The starting position at which to begin reading data from the BFILE . If offset is not specified, the data is written from the beginning of the BLOB . Valid values are numbers greater than or equal to 1 . |
amount |
The total number of bytes to be read from the BFILE ; if amount is 0 , the data is read in a streamed mode from input offset until the end of the BFILE . |
Returns a UString
containing the directory object associated with the BFILE
. Note the UString
object is in UTF16 character set. The environment associated with BFILE
should be associated with UTF16 characterset.
LNCPP20616Syntax
UString getUStringDirAlias() const;LNCPP20617
Returns a UString
containing the file name associated with the BFILE
. Note the UString
object is in UTF16 characterset. The environment associated with BFILE
should be associated with UTF16 characterset.
LNCPP20618Syntax
UString getUStringFileName() const;LNCPP20619
Tests whether the Bfile
object has been initialized. If the Bfile
object has been initialized, then TRUE
is returned; otherwise, FALSE
is returned.
LNCPP20620Syntax
bool isInitialized() const;LNCPP20621
Tests whether the Bfile
object is atomically NULL
. If the Bfile
object is atomically NULL
, then TRUE
is returned; otherwise, FALSE
is returned.
LNCPP20622Syntax
bool isNull() const;LNCPP20623
Tests whether the BFILE
is open. The BFILE
is considered to be open only if it was opened by a call on this Bfile
object. (A different Bfile
object could have opened this file as multiple open()
calls can be performed on the same file by associating the file with different Bfile
objects). If the BFILE
is open, then TRUE
is returned; otherwise, FALSE
is returned.
LNCPP20624Syntax
bool isOpen() const;LNCPP20625
Returns the number of bytes (inclusive of the end of file marker) in the BFILE
.
LNCPP20626Syntax
unsigned int length() const;LNCPP20627
Opens an existing BFILE
for read-only access. This function is meaningful the first time it is called for a Bfile
object.
LNCPP20628Syntax
void open();LNCPP20629
Assigns a Bfile
object to the current Bfile
object. The source Bfile
object is assigned to this Bfile
object only when this Bfile
object gets stored in the database.
LNCPP20630Syntax
Bfile& operator=( const Bfile &srcBfile);
Parameter | Description |
---|---|
srcBfile |
The Bfile object to be assigned to the current Bfile object. |
Compares two Bfile
objects for equality. The Bfile
objects are equal if they both refer to the same BFILE
. If the Bfile
objects are NULL
, then FALSE
is returned. If the Bfile
objects are equal, then TRUE
is returned; otherwise, FALSE
is returned.
LNCPP20632Syntax
bool operator==( const Bfile &srcBfile) const;
Parameter | Description |
---|---|
srcBfile |
The Bfile object to be compared with the current Bfile object. |
Compares two Bfile objects
for inequality. The Bfile
objects are equal if they both refer to the same BFILE
. If the Bfile
objects are not equal, then TRUE
is returned; otherwise, FALSE
is returned.
LNCPP20634Syntax
bool operator!=( const Bfile &srcBfile) const;
Parameter | Description |
---|---|
srcBfile |
The Bfile object to be compared with the current Bfile object. |
Reads a part or all of the BFILE
into the buffer specified, and returns the number of bytes read.
LNCPP20636Syntax
unsigned int read( unsigned int amt, unsigned char *buffer, unsigned int bufsize, unsigned int offset = 1) const;
Parameter | Description |
---|---|
amt |
The number of bytes to be read. Valid values are numbers greater than or equal to 1 . |
buffer |
The buffer that the BFILE data is to be read into. Valid values are numbers greater than or equal to amt . |
buffsize |
The size of the buffer that the BFILE data is to be read into. Valid values are numbers greater than or equal to amt . |
offset |
The starting position at which to begin reading data from the BFILE . If offset is not specified, the data is written from the beginning of the BFILE . |
Sets the directory object and file name of the BFILE
.
Syntax | Description |
---|---|
void setName( const string &dirAlias, const string &fileName); |
Sets the directory object and file name of the BFILE . |
void setName( const UString &dirAlias, const UString &fileName); |
Sets the directory object and file name of the BFILE (Unicode support). The client Environment should be initialized in OCCIUTIF16 mode. |
Parameter | Description |
---|---|
dirAlias |
The directory object to be associated with the BFILE . |
fileName |
The file name to be associated with the BFILE . |
Sets the Bfile object
to atomically NULL
.
LNCPP20639Syntax
void setNull();