Re: I can't read the data in the second time

From: Ludek Finstrle <luf(at)pzkagis(dot)cz>
To: Milton <milton(dot)siqueira(at)mapcardoso(dot)com(dot)br>
Cc: pgsql-odbc <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: I can't read the data in the second time
Date: 2006-01-10 21:05:51
Message-ID: 20060110210551.GA8098@soptik.pzkagis.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

> There are cases than i can´t read the data one more time.
> See the VB example below:
>
> ================================
> dim rdoQuery as rdoResultset
> dim strValue as string
>
> set rdoQuery = connection.OpenResultset("SELECT '1' || '2' AS test", rdOpenKeyset, rdConcurReadOnly)
>
> strValue = rdoQuery(0) ' Value is '12'
> strValue = rdoQuery(0) ' ERROR HERE: Invalid user of Null
>
>
> ================================
>
> The similar example work in the others DB (ORACLE, SQL SERVER, INFORMIX)

No. Same situation doesn't work againist MSSQL. When you try
"SELECT column FROM table1" where column is type longvarchar it fails
againist MSSQL:
=========================10.1. 2006 22:55:41=========================
Access Column 'text' failed
Error: 40002 - S1109: [Microsoft][SQL Native Client]Invalid cursor position
rdoErrors: 0 - S1109: [Microsoft][SQL Native Client]Invalid cursor position
=========================10.1. 2006 22:55:41=========================

=========================10.1. 2006 22:55:40=========================
Query opened
Command to Open SQL: OpenResultset('select codi as text from table1', rdOpenKeyset, rdConcurReadOnly)
=========================10.1. 2006 22:55:40=========================

PgSQL backend handles varchar as text in functions. I don't know how to
change it. We don't know text type size. We can't get it from
backend (at least I don't know how). So ADO choose SQLGetData method
to get it. There is limitation to not call SQLGetData after whole
data is getting from column.

> Is it a bug in the pgsql-odbc?

I think it's not a bug in psqlodbc.

Workarounds:
1) retype column from text to varchar explicitely
2) turn off Text as LongVarchar in Datasource settings

I hope it helps or someone point that I make mistake somewhere.

Regards,

Luf

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Ludek Finstrle 2006-01-10 21:15:59 Re: PsqlODBC slow on UNION queries
Previous Message Ludek Finstrle 2006-01-10 17:13:55 Re: Parameters.Refresh error.