Re: Problem with Intersolv Datadirect 3.11
Posted in 1998
Topics: SQL Development & Query Writing, Connectivity: ODBC / JDBC / .NET, Server Administration, Data Types & Schema Design
you need to use another data type other than a char field. As defined by the
ODBC spec a char in Informix is mapped to a SQL_Cahr which is a character
string of fixed lenth n(1<=n<=254). so, you need to be using a text field for
soemthing that large.
In article <363F0CE3.BCE18459@lucent.com>,
Paul Yurga <pyurga@lucent.com> wrote:
> Actually, the problem goes all the way back to the 2.8 CLI Drivers. If
> I create a table with a char(2048) field and an int field and then try
> to do a select statement with the char field being the first column,
> ODBC chokes on it. I can select the int field first and all works
> fine. This is easily reproducible and I want to know why no one has run
> into this yet and how to get it fixed.
>
> create table t1 (
> c1 char(2048),
> i1 int
> )>
> select c1, i1 from t1; --- Fails only on windows client.
> select i1, c1 from t1; --- Works as expected.>
> I haven't quite figured out what the size of the first char field must
> be to make it fail, but a sufficiently large one seems to do the trick.
> And of course, I need a sufficiently large one. :)
>
> The workaround is just to change the order of the fields in the select,
> but when you are trying to dynamically build select statements this is
> easier said then done.
>
> I believe it to be an ODBC driver problem because I can use dbaccess and
> it works fine. I can also use PowerBuilder which goes straight to
> I-Connect and it works fine. Using VB or Access to link the table I get
> the error every time.
>
> I have tested this using 2.8 CLI, 3.01, 3.10, and 3.11 Intersolv drivers
> all with the same results. My database engine is Informix 7.x.
>
> Paul Yurga
> pyurga@lucent.com
>
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own