diff options
-rw-r--r-- | odb/oracle/statement.cxx | 38 | ||||
-rw-r--r-- | odb/oracle/statement.ixx | 39 |
2 files changed, 38 insertions, 39 deletions
diff --git a/odb/oracle/statement.cxx b/odb/oracle/statement.cxx index e6fbb07..70577fa 100644 --- a/odb/oracle/statement.cxx +++ b/odb/oracle/statement.cxx @@ -2038,22 +2038,6 @@ namespace odb return n_; } - bool insert_statement:: - result (std::size_t i) - { - assert ((i_ == i || i_ + 1 == i) && i < n_); - - // Get to the next parameter set if necessary. - // - if (i != i_) - { - mex_->current (++i_); // mex cannot be NULL since this is a batch. - fetch (status_[i_] == 0 ? OCI_SUCCESS : OCI_ERROR, status_[i_]); - } - - return result_; - } - // // update_statement // @@ -2152,17 +2136,6 @@ namespace odb return n_; } - unsigned long long update_statement:: - result (std::size_t i) - { - assert ((i_ == i || i_ + 1 == i) && i < n_); - - if (i != i_) - mex_->current (++i_); // mex cannot be NULL since this is a batch. - - return result_; - } - // // delete_statement // @@ -2249,16 +2222,5 @@ namespace odb return n_; } - - unsigned long long delete_statement:: - result (std::size_t i) - { - assert ((i_ == i || i_ + 1 == i) && i < n_); - - if (i != i_) - mex_->current (++i_); // mex cannot be NULL since this is a batch. - - return result_; - } } } diff --git a/odb/oracle/statement.ixx b/odb/oracle/statement.ixx index f1cdb75..0ce76c6 100644 --- a/odb/oracle/statement.ixx +++ b/odb/oracle/statement.ixx @@ -43,7 +43,7 @@ namespace odb { result_ = true; - if (r != 0) // OCI_SUCCESS + if (r != 0 /*OCI_SUCCESS*/) { // An auto-assigned object id should never cause a duplicate primary // key. @@ -59,5 +59,42 @@ namespace odb } } } + + inline bool insert_statement:: + result (std::size_t i) + { + // Get to the next parameter set if necessary. + // + if (i != i_) + { + mex_->current (++i_); // mex cannot be NULL since this is a batch. + fetch (status_[i_] == 0 ? 0 /*OCI_SUCCESS*/ : -1 /*OCI_ERROR*/, + status_[i_]); + } + + return result_; + } + + // update_statement + // + inline unsigned long long update_statement:: + result (std::size_t i) + { + if (i != i_) + mex_->current (++i_); // mex cannot be NULL since this is a batch. + + return result_; + } + + // delete_statement + // + inline unsigned long long delete_statement:: + result (std::size_t i) + { + if (i != i_) + mex_->current (++i_); // mex cannot be NULL since this is a batch. + + return result_; + } } } |