Re: ODBC v08.02.0100

From: "luiz" <luiz(at)planit(dot)com(dot)br>
To: greg(dot)campbell(at)us(dot)michelin(dot)com
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: ODBC v08.02.0100
Date: 2006-08-31 20:09:56
Message-ID: 20060831200431.M35183@planit.com.br
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Hi Greg

I'm sorry if I'm not can express clearly what I need to explain.
My english is litle.

In a left outer join like below, field4 may have null values when test.fk_test2 is null,
now the result is a char(3) empty field, then I presume that this is a incorrect resultset

On Thu, 31 Aug 2006 15:26:04 -0400, greg.campbell wrote
> 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(dot)campbell(at)us(dot)michelin(dot)com
>
> "luiz" <luiz(at)planit(dot)com(dot)br>
>
>

"luiz" <luiz(at)planit(dot)com(dot)br>
> Sent by: pgsql-odbc-owner(at)postgresql(dot)org
> 08/31/2006 14:14

>
> To
> pgsql-odbc(at)postgresql(dot)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
>

--
Plan IT Tecnologia Informatica Ltda.


In response to

Browse pgsql-odbc by date

  From Date Subject
Next Message greg.campbell 2006-08-31 20:56:07 Re: ODBC v08.02.0100
Previous Message greg.campbell 2006-08-31 19:26:04 Re: ODBC v08.02.0100