pgsql/src/interfaces/jdbc/org/postgresql jdbc1 ... - Mailing list pgsql-committers

From Marc G. Fournier
Subject pgsql/src/interfaces/jdbc/org/postgresql jdbc1 ...
Date
Msg-id 200109060320.f863KUc47692@hub.org
Whole thread Raw
List pgsql-committers
CVSROOT:    /home/projects/pgsql/cvsroot
Module name:    pgsql
Changes by:    scrappy@hub.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


pgsql-committers by date:

Previous
From: "Marc G. Fournier"
Date:
Subject: pgsql/src/interfaces/jdbc/org/postgresql error ...
Next
From: "Marc G. Fournier"
Date:
Subject: pgsql/ oc/src/sgml/func.sgml rc/backend/utils/ ...