From: | Jeroen van Vianen <jeroen(at)vanvianen(dot)nl> |
---|---|
To: | pgsql-patches(at)postgresql(dot)org |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Patch for broken JDBC's getColumn() |
Date: | 2001-08-28 21:20:19 |
Message-ID: | 5.1.0.14.2.20010828230236.00a85fc8@ams010.satama.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc pgsql-patches |
Hi,
Attached is a patch for JDBC's getColumn() function that was broken /
flawed in the following ways:
1. Only returned columns that had a default value defined, rather than all
columns in a table
2. Used 2 * N + 1 queries to find out attributes, comments and typenames
for N columns.
By using some outer join syntax it is possible to retrieve all necessary
information in just one SQL statement. This means this version is only
suitable for PostgreSQL >= 7.1. Don't know whether that's a problem.
I've tested this function with current sources and 7.1.3 and patched both
jdbc1 and jdbc2. I haven't compiled nor tested the jdbc1 version though, as
I have no JDK 1.1 available.
Note the discussion in http://fts.postgresql.org/db/mw/msg.html?mid=1029626
regarding differences in obtaining comments on database object in 7.1 and
7.2. I was unable to use the following syntax (or similar ones):
select
...,
description
from
...
left outer join col_description(a.attrelid, a.attnum) description
order by
c.relname, a.attnum;
(the error was parse error at or near '(') so I had to paste the actual
code for the col_description function into the left outer join. Maybe
someone who is more knowledgable about outer joins might provide me with a
better SQL statement.
Please review.
Regards,
Jeroen
Attachment | Content-Type | Size |
---|---|---|
DatabaseMetaData.diff.gz | application/octet-stream | 3.7 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Rene Pijlman | 2001-08-28 21:32:01 | Re: JDBC version |
Previous Message | Ricardo Pardini | 2001-08-28 20:46:05 | JDBC version |
From | Date | Subject | |
---|---|---|---|
Next Message | Jeroen van Vianen | 2001-08-28 21:32:43 | Patch for broken JDBC's getColumn() |
Previous Message | Dominic J. Eidson | 2001-08-28 20:58:27 | Re: PAM Authentication Patch, take one... |