diff options
Diffstat (limited to 'libodbcpp/odbc-modifycommand.cpp')
-rw-r--r-- | libodbcpp/odbc-modifycommand.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/libodbcpp/odbc-modifycommand.cpp b/libodbcpp/odbc-modifycommand.cpp index 5d483c5..cb6d3c0 100644 --- a/libodbcpp/odbc-modifycommand.cpp +++ b/libodbcpp/odbc-modifycommand.cpp @@ -15,26 +15,20 @@ ODBC::ModifyCommand::~ModifyCommand() unsigned int ODBC::ModifyCommand::execute(bool anc) { - if (connection.txIsAborted()) { - throw Error("Transaction has been aborted, not issuing any more commands"); - } RETCODE rc = SQLExecute(hStmt); if (!SQL_SUCCEEDED(rc)) { if (rc != SQL_NO_DATA || !anc) { - connection.abortTx(); - throw Error(rc, SQL_HANDLE_STMT, hStmt, "ODBC::ModifyCommand::execute SQLExecute"); + throw Error(rc, SQL_HANDLE_STMT, hStmt); } } SQLLEN rows; rc = SQLRowCount(hStmt, &rows); - if (!SQL_SUCCEEDED(rc)) { - connection.abortTx(); - throw Error(rc, SQL_HANDLE_STMT, hStmt, "ODBC::ModifyCommand::execute SQLRowCount"); + if (!SQL_SUCCEEDED(rc)) { + throw Error(rc, SQL_HANDLE_STMT, hStmt); } if (rows > 0 || anc) { return rows; } - connection.abortTx(); - throw Error("No rows affected"); + throw DB::NoRowsAffected(); } |