OCILIB (C and C++ Driver for Oracle)
4.6.3
|
Object identifying the SQL data type LOB (CLOB, NCLOB and BLOB) More...
#include <ocilib.hpp>
Inherits ocilib::HandleHolder< OCI_Lob *>.
Public Member Functions | |
Lob () | |
Create an empty null Lob instance. | |
Lob (const Connection &connection) | |
Parametrized constructor. More... | |
T | Read (unsigned int length) |
Read a portion of a lob. More... | |
unsigned int | Write (const T &content) |
Write the given content at the current position within the lob. More... | |
unsigned int | Append (const T &content) |
Append the given content to the lob. More... | |
void | Append (const Lob &other) |
Append the given lob content to the lob. More... | |
bool | Seek (SeekMode seekMode, big_uint offset) |
Move the current position within the lob for read/write operations. More... | |
LobType | GetType () const |
return the type of lob | |
big_uint | GetOffset () const |
Returns the current R/W offset within the lob. | |
big_uint | GetLength () const |
Returns the number of characters or bytes contained in the lob. | |
big_uint | GetMaxSize () const |
Returns the lob maximum possible size. | |
big_uint | GetChunkSize () const |
Returns the current lob chunk size. More... | |
Connection | GetConnection () const |
Return the lob parent connection. | |
void | Truncate (big_uint length) |
Truncate the lob to a shorter length. More... | |
big_uint | Erase (big_uint offset, big_uint length) |
Erase a portion of the lob at a given position. More... | |
void | Copy (Lob &dest, big_uint offset, big_uint offsetDest, big_uint length) const |
Copy the given portion of the lob content to another one. More... | |
bool | IsTemporary () const |
Check if the given lob is a temporary lob. | |
bool | IsRemote () const |
Check if the given lob is a remote lob. | |
void | Open (OpenMode mode) |
Open explicitly a Lob. More... | |
void | Flush () |
Flush the lob content to the server (if applicable) | |
void | Close () |
Close explicitly a Lob. More... | |
void | EnableBuffering (bool value) |
Enable / disable buffering mode on the given lob object. More... | |
Lob | Clone () const |
Clone the current instance to a new one performing deep copy. | |
Lob & | operator+= (const Lob &other) |
Appending the given lob content to the current lob content. | |
bool | operator== (const Lob &other) const |
Indicates if the current lob value is equal to the given lob value. | |
bool | operator!= (const Lob &other) const |
Indicates if the current lob value is not equal the given lob value. | |
Object identifying the SQL data type LOB (CLOB, NCLOB and BLOB)
This class wraps the OCILIB object handle OCI_Lob and its related methods
Definition at line 4173 of file ocilib.hpp.
ocilib::Lob< T, U >::Lob | ( | const Connection & | connection | ) |
Parametrized constructor.
connection | - Parent connection |
Definition at line 3079 of file ocilib_impl.hpp.
References ocilib::Check(), ocilib::Environment::GetCharMaxSize(), ocilib::Lob< T, U >::Lob(), OCI_LobCreate(), OCI_LobFree(), OCI_LobRead2(), and ocilib::Lob< T, U >::Read().
T ocilib::Lob< T, U >::Read | ( | unsigned int | length | ) |
Read a portion of a lob.
length | - Maximum number of characters or bytes to read |
Referenced by ocilib::Lob< T, U >::Lob().
unsigned int ocilib::Lob< T, U >::Write | ( | const T & | content | ) |
Write the given content at the current position within the lob.
content | - content to write |
Definition at line 3134 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobWrite2().
unsigned int ocilib::Lob< T, U >::Append | ( | const T & | content | ) |
Append the given content to the lob.
content | - content to write |
Definition at line 3160 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobAppend().
void ocilib::Lob< T, U >::Append | ( | const Lob< T, U > & | other | ) |
Append the given lob content to the lob.
other | - source lob |
Definition at line 3154 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobAppendLob().
bool ocilib::Lob< T, U >::Seek | ( | SeekMode | seekMode, |
big_uint | offset | ||
) |
Move the current position within the lob for read/write operations.
seekMode | - Seek mode |
offset | - offset from current position |
Definition at line 3173 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobSeek().
big_uint ocilib::Lob< T, U >::GetChunkSize | ( | ) | const |
Returns the current lob chunk size.
Definition at line 3219 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobGetChunkSize().
void ocilib::Lob< T, U >::Truncate | ( | big_uint | length | ) |
Truncate the lob to a shorter length.
length | - New length in characters or bytes |
Definition at line 3231 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobTruncate().
big_uint ocilib::Lob< T, U >::Erase | ( | big_uint | offset, |
big_uint | length | ||
) |
Erase a portion of the lob at a given position.
offset | - Absolute position in source lob |
length | - Number of bytes or characters to erase |
Definition at line 3237 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobErase().
void ocilib::Lob< T, U >::Copy | ( | Lob< T, U > & | dest, |
big_uint | offset, | ||
big_uint | offsetDest, | ||
big_uint | length | ||
) | const |
Copy the given portion of the lob content to another one.
dest | - Destination lob |
offset | - Absolute position in the lob |
offsetDest | - Absolute position in the destination lob |
length | - Number of characters or bytes to copy |
Definition at line 3243 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobCopy().
void ocilib::Lob< T, U >::Open | ( | OpenMode | mode | ) |
Open explicitly a Lob.
mode | - open mode |
Definition at line 3261 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobOpen().
void ocilib::Lob< T, U >::Close | ( | ) |
Close explicitly a Lob.
Definition at line 3273 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobClose().
void ocilib::Lob< T, U >::EnableBuffering | ( | bool | value | ) |
Enable / disable buffering mode on the given lob object.
value | - Enable/disable buffering mode |
Definition at line 3279 of file ocilib_impl.hpp.
References ocilib::Check(), and OCI_LobEnableBuffering().