为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。 【DM版本】:DM8 【操作系统】:Ubutun22.04 【CPU】:i7 【问题描述】*:如题,C++客户端使用nanodbc连接,如何配置连接的AutoCommit为True,尝试在ConnectionStr里面添加各种都不起作用。 然后nanodbc的事务模式的commit也不起作用,但是优先想解决的问题是AutoCommit如何配置。 使用nanodbc。
_connection = nanodbc::connection(connection_str, timeout); auto rc = SQLSetConnectAttr(_connection.native_dbc_handle(), SQL_ATTR_AUTOCOMMIT, (SQLPOINTER)SQL_AUTOCOMMIT_ON, SQL_IS_UINTEGER); if (rc == SQL_SUCCESS || rc == SQL_SUCCESS_WITH_INFO) { // 正常 } if (this->is_valid()) { // "odbc connect succeeded."; return 0; }
以上都正常,然后查看
select CLNT_TYPE, AUTO_CMT from v$sessions;
_connection = nanodbc::connection(connection_str, timeout); auto rc = SQLSetConnectAttr(_connection.native_dbc_handle(), SQL_ATTR_AUTOCOMMIT, (SQLPOINTER)SQL_AUTOCOMMIT_ON, SQL_IS_UINTEGER); if (rc == SQL_SUCCESS || rc == SQL_SUCCESS_WITH_INFO) { // 正常 } if (this->is_valid()) { // "odbc connect succeeded."; return 0; }
以上都正常,然后查看
select CLNT_TYPE, AUTO_CMT from v$sessions;