SQLDescribeCol – schema cache not being updated completely?

From: "Jan-Peter Seifert" <Jan-Peter(dot)Seifert(at)gmx(dot)de>
To: pgsql-odbc(at)postgresql(dot)org
Subject: SQLDescribeCol – schema cache not being updated completely?
Date: 2011-05-05 14:38:06
Message-ID: 20110505143806.24920@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Hello,

we looked into a problem caused by some changes to a db’s schema via psqlODBC - e.g.:

Creating table:
SQLExecDirect(stmt, ‘CREATE TABLE tab1 (sp1 character varying(10));’, SQL_NTS)

Selecting from column:
SQLExecDirect(stmt, ‘SELECT sp1 from tab1’, SQL_NTS)

Getting column description:
SQLDescribeCol(stmt, 1, …) =>
ColumnName = "sp1", DataType = SQL_VARCHAR=12, ColumnSize = 10, DecimalDigits = 0, Nullable = SQL_NULLABLE=1

SQLCloseCursor(stmt);

Altering the column:
SQLExecDirect(stmt, ‘ALTER TABLE tab1 ALTER COLUMN sp1 TYPE char(25);’, SQL_NTS)
SQLExecDirect(stmt, ‘ALTER TABLE tab1 ALTER COLUMN sp1 SET NOT NULL;’, SQL_NTS)

Selecting from column again:
SQLExecDirect(stmt, ‘SELECT sp1 from tab1’, SQL_NTS)

Getting new column description:
SQLDescribeCol(stmt, 1, …)=>
ColumnName = "sp1", DataType = SQL_CHAR=1, ColumnSize = 10, DecimalDigits = 0, Nullable = SQL_NULLABLE=1

Obviously the Datatype information has been updated but ColumnSize und SQL_NULLABLE have been not.

It’s the same for DecimalDigits/SQL_NUMERIC

This has been tested with version 8.04.02.00 and 9.00.02.00 of psqlODBC.

Could you check into this, please?

Thank you very much,

Peter

P.S. Is there a way to flush/refresh this ‘schema’ cache completely or for a single table 'manually' during runtime?

--
NEU: FreePhone - kostenlos mobil telefonieren und surfen!
Jetzt informieren: http://www.gmx.net/de/go/freephone

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Hiroshi Saito 2011-05-09 15:31:03 psqlODBC 09.00.0300 Released
Previous Message Carlo Curatolo 2011-05-05 12:58:12 Re: PostgreSQL OLE DB Provider not visible in Excel 2010