https://bugs.freedesktop.org/show_bug.cgi?id=82688
--- Comment #5 from Julien Nabet <[email protected]> --- I think I understood how it works. 131 if( ( pODBC3SQLGetInfo = (T3SQLGetInfo)osl_getFunctionSymbol(pODBCso, OUString("SQLGetInfo").pData )) == NULL ) 132 return false; http://opengrok.libreoffice.org/xref/core/connectivity/source/drivers/odbc/OFunctions.cxx#131 which calls sqlliteodbc (on Debian testing, "apt-cache show libsqliteodbc" gives: Package: libsqliteodbc Source: sqliteodbc Version: 0.992-2 ) Retrieving the sources of sqliteodbc (from http://www.ch-werner.de/sqliteodbc/), I got in sqliteodbc.c: 8368 #if (defined(HAVE_UNIXODBC) && (HAVE_UNIXODBC)) || !defined(WINTERFACE) 8369 /** 8370 * Return information about what this ODBC driver supports. 8371 * @param dbc database connection handle 8372 * @param type type of information to be retrieved 8373 * @param val output buffer 8374 * @param valMax length of output buffer 8375 * @param valLen output length 8376 * @result ODBC error code 8377 */ 8378 8379 SQLRETURN SQL_API 8380 SQLGetInfo(SQLHDBC dbc, SQLUSMALLINT type, SQLPOINTER val, SQLSMALLINT valMax, 8381 SQLSMALLINT *valLen) 8382 { 8383 SQLRETURN ret; 8384 8385 HDBC_LOCK(dbc); 8386 ret = drvgetinfo(dbc, type, val, valMax, valLen); 8387 HDBC_UNLOCK(dbc); 8388 return ret; 8389 } 8390 #endif Then 7875 /** 7876 * Internal return information about what this ODBC driver supports. 7877 * @param dbc database connection handle 7878 * @param type type of information to be retrieved 7879 * @param val output buffer 7880 * @param valMax length of output buffer 7881 * @param valLen output length 7882 * @result ODBC error code 7883 */ 7884 7885 static SQLRETURN 7886 drvgetinfo(SQLHDBC dbc, SQLUSMALLINT type, SQLPOINTER val, SQLSMALLINT valMax, 7887 SQLSMALLINT *valLen) 7888 { ... 8026 case SQL_ODBC_SQL_CONFORMANCE: 8027 *((SQLSMALLINT *) val) = SQL_OSC_MINIMUM; 8028 *valLen = sizeof (SQLSMALLINT); 8029 break; Idem in sqlite3odbc.c and sqlite4odbc.c So we retrieved SQL_OSC_MINIMUM whereas we expect SQL_OSC_CORE or SQL_OSC_EXTENDED. (sidenote: OSC = "ODBC SQL CONFORMANCE") Now perhaps the sqliteodbc package fills wrongly SQL_ODBC_SQL_CONFORMANCE part (unless it really doesn't implement primary key whereas there are functions for this) or perhaps we shoudn't call "supportsCoreSQLGrammar" but "supportsMinimumSQLGrammar". Lionel: any thoughts? -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Libreoffice-bugs mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
