Altibase ODBC stores astral characters as CESU-8 on its wide path
Altibase ODBC 7.3 disagrees with itself above the BMP, reports CREATE_PARAMS "precision" so a generated VARCHAR is VARCHAR(1) (22026), and numbers its byte types outside ODBC.
Altibase ODBC 7.3 disagrees with itself above the BMP, reports CREATE_PARAMS "precision" so a generated VARCHAR is VARCHAR(1) (22026), and numbers its byte types outside ODBC.
Exasol ODBC 25.2/26.2 refuses SQL_C_BINARY outright (HY003), fails a NULL SQL_DECIMAL parameter bound SQL_C_DEFAULT (SI002), and claims SQL_GD_BLOCK it cannot deliver.
IBM i Access ODBC 1.1.0.29 against Db2 for i 7.5 — the Driver= value must stay under 36 characters, the libraries need a real /opt/ibm/iaccess, and a CLOB column costs a round trip per row.
Three defects in the Actian Ingres 10.1 ODBC client, each with its exact error text - the signal-handler takeover that aborts a JVM, the four-byte SQLWCHAR that truncates the connection string under unixODBC, and the 32-byte Driver= buffer.
Kinetica ODBC 7.1.9 accepts every SQLBindParameter and then shifts the values one position, sending the last as NULL under SQL_SUCCESS with an empty diagnostic queue.
A sweep of older SQL Server, PostgreSQL, MariaDB and Firebird releases through the same driver and the same unmodified matrix entry, with only the port changed.
SAP HANA client ODBC 2.29.25 (libodbcHDB) takes narrow SQL and SQL_C_CHAR parameters as Latin-1, not UTF-8, and returns its type table alphabetically so SECONDDATE outranks TIMESTAMP.
Two defects in SingleStore Connector/ODBC 1.2.2 with their exact errors - SQLGetTypeInfo failing 42S22 under ANSI_QUOTES, and a SQLColumns segfault on a NULL catalog - and what it gets right.
Apache Ignite's ODBC driver drops a NULL below the first row of a column-wise parameter array - a character column stores an empty string, a BINARY column segfaults the client inside SQLExecute.
What clickhouse-odbc 1.5.5 does when you write through it - SQL_NULL_DATA ignored when a value buffer is bound, parameter arrays that land two rows of five, and no affected-row count.
virtodbc.so from libvirtodbc0 7.2.12 stores UTF-16 text as garbage, aborts on any Charset= but the literal UTF-8, stores every SQL_C_SBIGINT as 0, and strides date parameter arrays by ColumnSize.
Firebird ODBC 3.0.1 and 3.5.0-rc1 stride fixed-type parameter arrays by BufferLength, write NULL for every SQL_C_SBIGINT after a character bind, and discard ROWS_FETCHED_PTR set before SQLPrepare.
Arrow Flight SQL ODBC 0.9.7, the driver Dremio publishes, advertises SQLBindParameter while answering HYC00, segfaults in SQLColumns without field metadata, and is iODBC-width on Apple Silicon.
alexbrainman/odbc takes an access violation inside api.SQLGetDiagRec on Windows; on Linux and macOS an arrow-go finalizer releases an ArrowArrayStream mid-cgo and takes the process down.
MySQL Connector/ODBC 26.7.1, Virtuoso 7.2.17 and Arrow Flight SQL ODBC 0.9.7 for macOS ship as iODBC-width drivers, and under unixODBC they return empty diagnostics or abort the process.
OpenSearch SQL ODBC 1.5.0.0 converts any character value to today's date when asked for SQL_C_TYPE_TIMESTAMP, and its SQLError never returns SQL_NO_DATA, so a failed connect hangs unixODBC forever.
Seven ways CrateDB, QuestDB, Materialize, RisingWave, ArcadeDB, Spanner and YDB answer psqlodbc 16 differently from PostgreSQL 16, each with the error text it produces.
psqlodbc silently discarded a committed transaction on servers without SAVEPOINT and narrowed an out-of-range int8 to -1; both are fixed, and two version-and-build traps remain.
sqliteodbc 0.99991 fails SQLGetData(SQL_C_NUMERIC) with a bare SQL_ERROR and zero diagnostic records, and accepts SQL_ATTR_PARAM_STATUS_PTR without ever writing to it.
taos-odbc at 3.3.6.13 has no TIMESTAMP_STRUCT conversion, one route into a BOOL parameter and no DECIMAL at all, and it aborts the whole process when a client asks for ODBC 3.80.
IBM's Db2 clidriver (Db2 and Informix) and Actian Ingres' driver are built with a four-byte SQLLEN on 64-bit Linux, so indicators are read at the wrong stride and NULLs disappear.
unixODBC 2.3.12 and 2.3.14 overwrite their own stack reading the first SQL_ERROR diagnostic from a driver whose SQLWCHAR is four bytes - Virtuoso and Arrow Flight SQL on macOS, Ingres on Linux.
Five drivers that pass on Linux fail on Windows on text: the system ANSI code page sits between the caller and the driver, and the repairs differ only in which call has to leave the wide path.
Five findings in MariaDB Connector/ODBC with their exact errors - 3.2's array segfault and wrong row counts, its connect-time DUAL probe, its binary-literal path, and 3.1.15's missing NUL terminator.
Seven findings in MySQL Connector/ODBC 9.4, 8.4 and 26.7.1 with their exact errors - the fractional seconds pyodbc loses, a SIGFPE in get_column_size, two segfaults, and four platform traps.
Six servers behind MySQL Connector/ODBC 9.4 - what their server-side prepare does with a BLOB-typed string, a MYSQL_TYPE_NULL, a BIT array of NULLs, and a connector probe that assumes DUAL.
Oracle Instant Client ODBC 23 (SQORA) accepts SQL_ATTR_ROW_ARRAY_SIZE on an open cursor and then segfaults in bcoReturnColData or silently drops rows; CLOB columns read a row at a time.
DuckDB ODBC 1.5.5 - SQLGetInfo(SQL_DBMS_VER) segfaults, a parameter array stores set 0 in every row, a C++ exception across the FFI aborts Rust, and :memory: is a new database per connection.
MySQL Connector/ODBC 9.4 runs strtol() on the NULL NUMERIC_PRECISION the MongoDB BI Connector reports for a DECIMAL column, and the process dies inside SQLColumns.