BRUCE Momjian - Re: bug in info.c file - incorrect SQL

From: "Jim Holliday" <jholliday(at)aurigin(dot)com>
To: "Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: <pgsql-odbc(at)postgresql(dot)org>, <rlong(at)micropat(dot)com>
Subject: BRUCE Momjian - Re: bug in info.c file - incorrect SQL
Date: 2003-01-02 23:29:24
Message-ID: 56510AAEF435D240958D1CE8C6B1770AE09408@mailc03.aurigin.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Bruce, thanks for the quick response.

I have been using the msi compiled version. My co-worker could not
successfully compile the modified code because the source did not
contain the files setup.c and psqlodbc.rc.
Can you send me a new msi version, or will you have the new version on
the web site soon?
Thanks again

-----Original Message-----
From: Bruce Momjian
Sent: Thu 1/2/2003 2:29 PM
To: Jim Holliday
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: [ODBC] bug in info.c file - incorrect SQL

Good catch, patch attached. I found the problems you saw, plus a
few
cases where pg_namespace was referenced in the WHERE but not
FROM ---
not a big problem, but clearer if we specify it both places.
Patch
applied.


------------------------------------------------------------------------
---

Jim Holliday wrote:
> For the ODBC driver psqlodbc.dll version 7.02.0003 there is an
error in
> the info.c. In 2 places the SQL contains an alias in the FROM
clause
> for the pg_namespace table and then references the table in
the where
> clause. The below cut from the info.c file should replace all
instances
> on pg_namespace. in the where clause with pn.
>
> This should be done in both places.
> I modified this code, but was unable to compile a new
version of
> the odbc driver.
>
> When you re-compile, could you reply email to me please.
> Thanks
>
> > sprintf(tables_query, "SELECT pt.tgargs, "
> > " pt.tgnargs, "
> > " pt.tgdeferrable, "
> > " pt.tginitdeferred, "
> > " pp1.proname, "
> > " pp2.proname, "
> > " pc.oid, "
> > " pc1.oid, "
> > " pc1.relname, "
> > " pn.nspname "
> > "FROM pg_class pc, "
> > " pg_proc pp1, "
> > " pg_proc pp2, "
> > " pg_trigger pt1, "
> > " pg_trigger pt2, "
> > " pg_proc pp, "
> > " pg_trigger pt, "
> > " pg_class pc1, "
> > " pg_namespace pn "
> > "WHERE pt.tgrelid = pc.oid "
> > "AND pp.oid = pt.tgfoid "
> > "AND pt1.tgconstrrelid = pc.oid "
> > "AND pp1.oid = pt1.tgfoid "
> > "AND pt2.tgfoid = pp2.oid "
> > "AND pt2.tgconstrrelid = pc.oid "
> > "AND ((pc.relname='%s') "
> > "AND (pg_namespace.oid = pc.relnamespace) "
> > "AND (pg_namespace.nspname = '%s') "
> > "AND (pp.proname LIKE '%%ins') "
> > "AND (pp1.proname LIKE '%%upd') "
> > "AND (pp2.proname LIKE '%%del') "
> > "AND (pt1.tgrelid=pt.tgconstrrelid) "
> > "AND (pt1.tgconstrname=pt.tgconstrname) "
> > "AND (pt2.tgrelid=pt.tgconstrrelid) "
> > "AND (pt2.tgconstrname=pt.tgconstrname) "
> > "AND (pt.tgconstrrelid=pc1.oid) "
> > "AND (pc1.relnamespace=pn.oid))",
> > fk_table_needed, schema_needed);
> > }
>
>
>
[ Type application/ms-tnef treated as attachment, skipping... ]

>
> ---------------------------(end of
broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org

--
Bruce Momjian |
http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square,
Pennsylvania 19073

Attachment Content-Type Size
winmail.dat application/ms-tnef 9.6 KB

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Bruce Momjian 2003-01-02 23:35:00 Re: BRUCE Momjian - Re: bug in info.c file - incorrect SQL
Previous Message Bruce Momjian 2003-01-02 22:36:29 Re: ODBC - adding missing FROM clause entry