diff --git a/src/backends/db2/session.cpp b/src/backends/db2/session.cpp index 8b83982a6..8c8c9752f 100644 --- a/src/backends/db2/session.cpp +++ b/src/backends/db2/session.cpp @@ -96,7 +96,11 @@ db2_session_backend::db2_session_backend( } /* Set autocommit */ - cliRC = SQLSetConnectAttr(hDbc,SQL_ATTR_AUTOCOMMIT, this->autocommit ? (SQLPOINTER)SQL_AUTOCOMMIT_ON : (SQLPOINTER)SQL_AUTOCOMMIT_OFF, SQL_NTS); + if(this->autocommit) { + cliRC = SQLSetConnectAttr(hDbc,SQL_ATTR_AUTOCOMMIT, (SQLPOINTER)SQL_AUTOCOMMIT_ON, SQL_NTS); + } else { + cliRC = SQLSetConnectAttr(hDbc,SQL_ATTR_AUTOCOMMIT, (SQLPOINTER)SQL_AUTOCOMMIT_OFF, SQL_NTS); + } if (cliRC != SQL_SUCCESS) { std::string msg=db2_soci_error::sqlState("Error while setting autocommit attribute",SQL_HANDLE_DBC,hDbc); SQLFreeHandle(SQL_HANDLE_DBC,hDbc);