From: Marek M. <mar...@at...> - 2009-05-18 07:27:19
|
Hi, I have problem to use ODBC 64bit driver on Win XP 64. I used 2.0.0.148 version a tried this test: public void Test() { string cn = "DRIVER={Firebird/InterBase(r) driver};Dialect=3;PASSWORD=sysdba;User=sysdba;Database=database.fdb;ServerType=1"; using (OdbcConnection conn = new OdbcConnection(cn)) { conn.Open(); OdbcCommand cmd = new OdbcCommand(); cmd.Connection = conn; cmd.CommandText = "select * from tbl_test"; using (OdbcDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { long id = reader.GetInt64(reader.GetOrdinal("ID")); string nazev = reader.GetString(reader.GetOrdinal("nazev")); string poznamka = "null"; if (!reader.IsDBNull(reader.GetOrdinal("poznamka"))) { poznamka = reader.GetString(reader.GetOrdinal("poznamka")); } } } } } But it throws exception when in column "poznamka" is null value: --------------------------- System.OverflowException: Arithmetic operation resulted in an overflow. at System.Data.Odbc.OdbcDataReader.GetData(Int32 i, SQL_C sqlctype, Int32 cb, Int32& cbActualOut) at System.Data.Odbc.OdbcDataReader.internalGetString(Int32 i) at System.Data.Odbc.OdbcDataReader.GetValue(Int32 i) at System.Data.Odbc.OdbcDataReader.IsDBNull(Int32 i) at FbTest.Form1.Test() --------------------------- Could you advice me where is a problem? Is it a bug in Firebird ODBC driver or do I something wrong? (It works fine with 32bit driver on 32bit windows.) Thanks, Smoke |