Informix ODBC
Posted in 2000
Topics: Installation, Setup & Upgrades, Connectivity: ODBC / JDBC / .NET
I pologise if this has come up before but here goes. I was using the old Intersolv ODBC drivers for Informix and my queries ran no problem. I then updated to the Informix 3.31 32 bits drivers still no probelms My workstation (NT) was just rebuilt and I reloaded the Informix SDK with the Informix 3.31 32 bits drivers. Now the report I wrote have errors in the format, specifically I have a number field that used to give me the correct number, but is now coming back in the query as a 0 When I reinstalled the old Intersolv 3.11 32 bit drivers the problem went away, but if I upgrade to the Informix 3.31 the problem is back. Any explanations would be appreciated * Sent from RemarQ http://www.remarq.com The Internet's Discussion Network * The fastest and easiest way to search and participate in Usenet - Free!
search their bug db at http://www.informix.com/informix/services/ilink/kb/kb_table.html ; they have several issues with client side ODBC connections and their drivers. Ones I know of: 1) Outer Joins - any values that return null due to an outer join will corrupt that record 2) aggregates (Sum,Max,etc) on floats - recordset fails 3) aggregates on currency data types with a 0 in the set - recordset fails If you enable tracing and hack through your logs, all of these seem to return invalid datatypes. All of them can be avoided by explicitly casting the values in the sql. Of course, casting every value in an "SELECT * FROM foo OUTER fee ..." is tedious, and your sql is now too closely tied to the table structure (ie if the field fee.str1 changes from a 3 char to a 4 char field, your casting in any reporting is now incorrect), and I don't know if this affects efficiency. The Intersolv/Merrant drivers do not suffer from any of these shortcomings, AFAIK, though I am not aware if there are other problems with them.