diff options
Diffstat (limited to 'src/interfaces/odbc/info30.c')
-rw-r--r-- | src/interfaces/odbc/info30.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/src/interfaces/odbc/info30.c b/src/interfaces/odbc/info30.c index 414110b8938..c1c2c63d066 100644 --- a/src/interfaces/odbc/info30.c +++ b/src/interfaces/odbc/info30.c @@ -53,14 +53,13 @@ PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue, | SQL_CA1_RELATIVE | SQL_CA1_BOOKMARK | SQL_CA1_LOCK_NO_CHANGE | SQL_CA1_POS_POSITION | SQL_CA1_POS_UPDATE | SQL_CA1_POS_DELETE - | SQL_CA1_POS_REFRESH); - if (ci->drivers.lie) - value |= (SQL_CA1_BULK_ADD + | SQL_CA1_POS_REFRESH | SQL_CA1_BULK_ADD | SQL_CA1_BULK_UPDATE_BY_BOOKMARK | SQL_CA1_BULK_DELETE_BY_BOOKMARK | SQL_CA1_BULK_FETCH_BY_BOOKMARK - - | SQL_CA1_LOCK_EXCLUSIVE + ); + if (ci->drivers.lie) + value |= (SQL_CA1_LOCK_EXCLUSIVE | SQL_CA1_LOCK_UNLOCK | SQL_CA1_POSITIONED_UPDATE | SQL_CA1_POSITIONED_DELETE @@ -72,9 +71,10 @@ PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue, value = 0; if (ci->updatable_cursors || ci->drivers.lie) value |= (SQL_CA2_OPT_ROWVER_CONCURRENCY - | SQL_CA2_SENSITIVITY_ADDITIONS | SQL_CA2_SENSITIVITY_DELETIONS - | SQL_CA2_SENSITIVITY_UPDATES); + | SQL_CA2_SENSITIVITY_UPDATES + /* | SQL_CA2_SENSITIVITY_ADDITIONS */ + ); if (ci->drivers.lie) value |= (SQL_CA2_READ_ONLY_CONCURRENCY | SQL_CA2_LOCK_CONCURRENCY @@ -97,19 +97,21 @@ PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue, len = 4; value = SQL_CA1_NEXT | SQL_CA1_ABSOLUTE | SQL_CA1_RELATIVE | SQL_CA1_BOOKMARK - | SQL_CA1_LOCK_NO_CHANGE | SQL_CA1_POS_POSITION; + | SQL_CA1_LOCK_NO_CHANGE | SQL_CA1_POS_POSITION + | SQL_CA1_POS_REFRESH; if (ci->updatable_cursors) value |= (SQL_CA1_POS_UPDATE | SQL_CA1_POS_DELETE - | SQL_CA1_POS_REFRESH); + ); break; case SQL_STATIC_CURSOR_ATTRIBUTES2: len = 4; - value = 0; + value = SQL_CA2_READ_ONLY_CONCURRENCY; if (ci->updatable_cursors) value |= (SQL_CA2_OPT_ROWVER_CONCURRENCY - | SQL_CA2_SENSITIVITY_ADDITIONS + /* | SQL_CA2_SENSITIVITY_ADDITIONS | SQL_CA2_SENSITIVITY_DELETIONS - | SQL_CA2_SENSITIVITY_UPDATES); + | SQL_CA2_SENSITIVITY_UPDATES */ + ); break; case SQL_ODBC_INTERFACE_CONFORMANCE: |