aboutsummaryrefslogtreecommitdiff
path: root/odb/oracle/oracle-types.hxx
diff options
context:
space:
mode:
authorConstantin Michael <constantin@codesynthesis.com>2011-09-14 10:10:36 +0200
committerConstantin Michael <constantin@codesynthesis.com>2011-09-14 10:10:36 +0200
commit5b650a2f0b506fb871beaab6de71e1f628b6baf7 (patch)
tree590f6927641e8ed7d5849d468da5c583a2467068 /odb/oracle/oracle-types.hxx
parent3d76b241bc6af7f7f3beda3cc9d6609cf5db0f43 (diff)
Implement LOB result callbacks using OCI LOB interface
Diffstat (limited to 'odb/oracle/oracle-types.hxx')
-rw-r--r--odb/oracle/oracle-types.hxx16
1 files changed, 7 insertions, 9 deletions
diff --git a/odb/oracle/oracle-types.hxx b/odb/oracle/oracle-types.hxx
index 1f5fe57..5911d4f 100644
--- a/odb/oracle/oracle-types.hxx
+++ b/odb/oracle/oracle-types.hxx
@@ -19,7 +19,8 @@ namespace odb
{
ub2 type; // The type stored by buffer. This must be an external
// OCI type identifier of the form SQLT_XXX.
- void* buffer;
+ void* buffer; // Image buffer pointer. If this bind is associated with
+ // an output LOB column, interpret as an OCILobLocator*.
ub2* size; // The number of bytes in buffer. Due to
// inconsistencies in the OCI interface, this will be
// interpreted as a ub4 when callbacks are in use.
@@ -27,16 +28,14 @@ namespace odb
// buffer.
sb2* indicator; // Pointer to an OCI indicator variable.
- // Callback function signature used to specify parameters that are
+ // Callback function signature used to specify LOB parameters that are
// passed to the database.
//
typedef bool (*param_callback_type) (
void** context, // [in/out] The user context.
- void** buffer, // [out] A a buffer containing the parameter data
- // to write to the database.
+ void** buffer, // [out] On return, a pointer to a buffer containing
+ // parameter data.
ub4* size, // [out] The parameter data length in bytes.
- bool* null, // [out] True if the parameter is null. Both buffer
- // and size are ignored is this is true.
bool* last, // [out] True if buffer contains the last piece of
// data.
void* temp_buffer, // [in] A temporary buffer that may be used if
@@ -44,14 +43,13 @@ namespace odb
// this buffer on return if it is used.
ub4 capacity); // [in] The temporary buffer length in bytes.
- // Callback function signature used to specify values returned from the
- // database.
+ // Callback function signature used to specify LOB values returned from
+ // the database.
//
typedef bool (*result_callback_type) (
void** context, // [in/out] The user context.
void* buffer, // [in] A buffer containing the result data.
ub4 size, // [in] The result data length in bytes.
- bool null, // [in] True if the result data is NULL.
bool last); // [in] True if this is the last piece of result data.
param_callback_type param_callback;