pgsql/src/interfaces/jdbc/org/postgresql jdbc1 ...

From: "Marc G(dot) Fournier" <scrappy(at)hub(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql/src/interfaces/jdbc/org/postgresql jdbc1 ...
Date: 2001-09-06 03:20:30
Message-ID: 200109060320.f863KUc47692@hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

CVSROOT: /home/projects/pgsql/cvsroot
Module name: pgsql
Changes by: scrappy(at)hub(dot)org 01/09/05 23:20:30

Modified files:
src/interfaces/jdbc/org/postgresql/jdbc1: DatabaseMetaData.java
src/interfaces/jdbc/org/postgresql/jdbc2: DatabaseMetaData.java

Log message:
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.

Jeroen van Vianen

Browse pgsql-committers by date

  From Date Subject
Next Message Marc G. Fournier 2001-09-06 03:21:39 pgsql/contrib/pgcrypto px.c
Previous Message Marc G. Fournier 2001-09-06 03:18:13 pgsql/src/include/libpq pqcomm.h