aboutsummaryrefslogtreecommitdiff
path: root/odb/oracle/statement.hxx
diff options
context:
space:
mode:
authorConstantin Michael <constantin@codesynthesis.com>2011-09-16 09:32:57 +0200
committerConstantin Michael <constantin@codesynthesis.com>2011-09-16 10:03:12 +0200
commitee99d2c795d9b6afc263f7ae5c15a62abd258e4e (patch)
tree896c28be19cd8c1bf2682edcd83258e8f9ca9c78 /odb/oracle/statement.hxx
parente601ea00bf044fd1ac48db859c2c8491f45fda3f (diff)
Corrections to LOB parameter and results callback implementation
Diffstat (limited to 'odb/oracle/statement.hxx')
-rw-r--r--odb/oracle/statement.hxx22
1 files changed, 12 insertions, 10 deletions
diff --git a/odb/oracle/statement.hxx b/odb/oracle/statement.hxx
index b4e6601..add263a 100644
--- a/odb/oracle/statement.hxx
+++ b/odb/oracle/statement.hxx
@@ -48,13 +48,21 @@ namespace odb
// lost OCIDefine resources.
//
void
- bind_result (bind*,
- std::size_t count,
- std::size_t lob_prefetch_len = 0);
+ bind_result (bind*,
+ std::size_t count,
+ std::size_t lob_prefetch_size = 0);
+
+ // Stream the result LOBs, calling user callbacks where necessary.
+ //
+ void
+ stream_result_lobs ();
protected:
connection& conn_;
auto_handle<OCIStmt> stmt_;
+
+ bind* result_binds_;
+ std::size_t count_;
};
class LIBODB_ORACLE_EXPORT select_statement: public statement
@@ -67,7 +75,7 @@ namespace odb
const std::string& statement,
binding& cond,
binding& data,
- std::size_t lob_prefetch_len = 0);
+ std::size_t lob_prefetch_size = 0);
enum result
{
success,
@@ -83,17 +91,11 @@ namespace odb
void
free_result ();
- // Stream the result lobs, invoking user callbacks where necessary.
- //
- void
- stream_result_lobs ();
-
private:
select_statement (const select_statement&);
select_statement& operator= (const select_statement&);
private:
- binding& data_;
bool done_;
};