Re: ODBC v08.02.0100 - Mailing list pgsql-odbc

From greg.campbell@us.michelin.com
Subject Re: ODBC v08.02.0100
Date
Msg-id OFA6DAFA93.9C66D33D-ON852571DB.00695B9B-852571DB.006AC20C@michelin.com
Whole thread Raw
In response to ODBC v08.02.0100  ("luiz" <luiz@planit.com.br>)
Responses Re: ODBC v08.02.0100  ("luiz" <luiz@planit.com.br>)
List pgsql-odbc

So your issue is that now the field types including NULL constraints match the underlying tables?
Is the change caused just from changing pgODBC driver versions, while the database version stayed the same.?
Isn't this the result we would expect if we were using psql at the command line?
I don't mean to be rude, but does your application expect a resultset where certain field never have a NULL value, but where the database design has the fields specified as nullable (no specification of NOT NULL)? For instance in your example fk_test2 is designed to allow NULL, but perhaps an application does not anticipate the possibility that NULL may be its value.

Perhaps the old behavior was a bug.


Greg Campbell ENG-ASE/Michelin US5
Lexington, South Carolina
803-951-5561, x75561
Fax: 803-951-5531
greg.campbell@us.michelin.com

Inactive hide details for "luiz" <luiz@planit.com.br>


          "luiz" <luiz@planit.com.br>
          Sent by: pgsql-odbc-owner@postgresql.org

          08/31/2006 14:14


To

pgsql-odbc@postgresql.org

cc


Subject

[ODBC] ODBC v08.02.0100

Hi all,

I make some tests with this new version and i notice a diference in the
behaviour about the structures of tables returned by queries trough  this
version and older versions of odbc

I'm using Visual FoxPro with postgres 8.1.4.

In previous version all fields are marked to accept null values.
In this version (8.02.0100) some fields now don't accept null values, seemed
to me that now use the same definition of source table structure, like this:

CREATE TABLE test (
 id serial NOT NULL,
 fk_test2 int4,
 field1 char(3) NOT NULL,
 field2 varchar(10),
 field3 date );

CREATE TABLE test2 (
 id serial NOT NULL,
 field4 char(3) NOT NULL,
 field5 char(3) );

SELECT test.*
    , test2.id as id2
    , test2.field4
    , test2.field5
 from test LEFT OUTER JOIN test2 on test.fk_test2 = test2.id;

The fields of resultset will be now this:

id int4 NOT NULL
fk_test2 int4
field1 char(3) NOT NULL
field2 varchar(10)
field3 date
id2 int4 NOT NULL
field4 char(3) NOT NULL
field5 char(3)

with odbc version 8.01.0200 all fields accept null values.

I'm not sure about what is the correct behaviour, but this can be considered
as a bug in the new version ?

Thanks in Advance

Luiz

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Attachment

pgsql-odbc by date:

Previous
From: "luiz"
Date:
Subject: ODBC v08.02.0100
Next
From: "luiz"
Date:
Subject: Re: ODBC v08.02.0100