Обсуждение: BUG #5056: SQLDescribeColW for function returning a result set incorrectly setting sql_nullable

Поиск
Список
Период
Сортировка

BUG #5056: SQLDescribeColW for function returning a result set incorrectly setting sql_nullable

От
"the6campbells"
Дата:
The following bug has been logged online:

Bug reference:      5056
Logged by:          the6campbells
Email address:      the6campbells@gmail.com
PostgreSQL version: 8.4.1
Operating system:   windows
Description:        SQLDescribeColW for function returning a result set
incorrectly setting sql_nullable
Details:

create table TSET1 (RNUM integer not null, C1 integer, C2 char(3));

create function PRES ( )
returns setof TSET1 as
'
 select RNUM, C1, C2 from TSET1;
'  LANGUAGE 'sql'
;

in ODBC test sqlPrepare { call pres } then describe the columns. first
column should be SQL_NO_NULLS not NULLABLE.

Describe Column All:
                            icol, szColName, *pcbColName, *pfSqlType, *pcbColDef, *pibScale,
*pfNullable
                                        1, rnum, 4, SQL_INTEGER=4, 10, 0, SQL_NULLABLE=1
                                            2, c1, 2, SQL_INTEGER=4, 10, 0, SQL_NULLABLE=1
                                            3, c2, 2, SQL_WCHAR=-8, 3, 0, SQL_NULLABLE=1

Re: BUG #5056: SQLDescribeColW for function returning a result set incorrectly setting sql_nullable

От
Robert Haas
Дата:
On Mon, Sep 14, 2009 at 10:40 PM, the6campbells <the6campbells@gmail.com> w=
rote:
>
> The following bug has been logged online:
>
> Bug reference: =A0 =A0 =A05056
> Logged by: =A0 =A0 =A0 =A0 =A0the6campbells
> Email address: =A0 =A0 =A0the6campbells@gmail.com
> PostgreSQL version: 8.4.1
> Operating system: =A0 windows
> Description: =A0 =A0 =A0 =A0SQLDescribeColW for function returning a resu=
lt set
> incorrectly setting sql_nullable
> Details:
>
> create table TSET1 (RNUM integer not null, C1 integer, C2 char(3));
>
> create function PRES ( )
> returns setof TSET1 as
> '
> =A0select RNUM, C1, C2 from TSET1;
> ' =A0LANGUAGE 'sql'
> ;
>
> in ODBC test sqlPrepare { call pres } then describe the columns. first
> column should be SQL_NO_NULLS not NULLABLE.
>
> Describe Column All:
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0icol, szColName, *pcbColName, *pfSql=
Type, *pcbColDef, *pibScale,
> *pfNullable
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
 =A0 =A0 =A01, rnum, 4, SQL_INTEGER=3D4, 10, 0, SQL_NULLABLE=3D1
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
 =A0 =A0 =A0 =A0 =A0 =A0 =A02, c1, 2, SQL_INTEGER=3D4, 10, 0, SQL_NULLABLE=
=3D1
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
 =A0 =A0 =A0 =A0 =A0 =A0 =A03, c2, 2, SQL_WCHAR=3D-8, 3, 0, SQL_NULLABLE=3D1

I think you may want to try here, for both this and your previous bug repor=
t.

pgsql-odbc@postgresql.org
http://archives.postgresql.org/pgsql-odbc/

...Robert