From 3c16d095b5b395560a567db8ae8cfa06899150f9 Mon Sep 17 00:00:00 2001 From: Hiroshi Inoue Date: Mon, 18 Feb 2002 03:16:11 +0000 Subject: The version is now 7.01.0010. 1) Handle parameter array. 2) Allow re-use of the connection handle after SQLDisconnect. 3) Reject NULL if no indicator specified. 4) Improve the handling of '_' in table name. 5) Unify internal begin/commit/abort operations. 6) Change SQLTables() to return null not "" for the table_owner. 7) Fix a bug about parameter handling reported by Benoit Menendez. 8) Add cast in handling ODBC date/time escape sequences. 9) Fix a bug about cache_size handing in declare/fetch mode. [ODBC3.0 related] 10) Improve the handling of descriptor handles(ODBC3.0). 11) Improve the type handling of some types for ODBC3.0. [Thanks to Marcelo Aceto for his useful patches] 12) Allow nested ODBC escape. 13) Allow changing autocommit on/off inside the transaction block. 14) Improve the handling of ODBC scalar functions. --- src/interfaces/odbc/options.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'src/interfaces/odbc/options.c') diff --git a/src/interfaces/odbc/options.c b/src/interfaces/odbc/options.c index bf2707f4dae..80ec7dac68e 100644 --- a/src/interfaces/odbc/options.c +++ b/src/interfaces/odbc/options.c @@ -342,14 +342,12 @@ PGAPI_SetConnectOption( break; case SQL_AUTOCOMMIT: + if (vParam == SQL_AUTOCOMMIT_ON && CC_is_in_autocommit(conn)) + break; + else if (vParam == SQL_AUTOCOMMIT_OFF && !CC_is_in_autocommit(conn)) + break; if (CC_is_in_trans(conn)) - { - conn->errormsg = "Cannot switch commit mode while a transaction is in progress"; - conn->errornumber = CONN_TRANSACT_IN_PROGRES; - CC_log_error(func, "", conn); - return SQL_ERROR; - } - + CC_commit(conn); mylog("PGAPI_SetConnectOption: AUTOCOMMIT: transact_status=%d, vparam=%d\n", conn->transact_status, vParam); switch (vParam) @@ -475,7 +473,7 @@ PGAPI_GetConnectOption( break; case SQL_TXN_ISOLATION: /* NOT SUPPORTED */ - *((UDWORD *) pvParam) = SQL_TXN_SERIALIZABLE; + *((UDWORD *) pvParam) = SQL_TXN_READ_COMMITTED; break; /* These options should be handled by driver manager */ -- cgit v1.2.3