Обсуждение: jdbc driver return wrong medata values

Поиск
Список
Период
Сортировка

jdbc driver return wrong medata values

От
Xavier Maysonnave
Дата:
Hi,

Environment :

Windows XP SP2
Postgres 8.0
JDK 1.5.0_02
postgresql-8.0-311.jdbc3.jar

While analysing the index structures of a metadata table with the
following statement :

ResultSet parts = dbMeta.getIndexInfo("aCatalog", "aMetaSchema",
"aTable", false, false);
...
if (parts != null) {
    try {
        while (parts.next()) {
            String indexName = parts.getString(6);
            String columnName = parts.getString(9);
            short position= parts.getShort(8);
            String direction = parts.getString(10);
            boolean unique  = parts.getBoolean(4);
        }
    } finally {
        parts.close();
    }
}

While controling the result with pgadmin III it appears that :

- Unique Index have a returned boolean unique set to false :
    - this value should apply to Non Unique Index
- Non Unique Index have a returned boolean unique set to true :
    - this value should apply to Unique Index

Regards.

Re: jdbc driver return wrong medata values

От
Kris Jurka
Дата:
On Thu, 14 Apr 2005, Xavier Maysonnave wrote:

> postgresql-8.0-311.jdbc3.jar
>
> While analysing the index structures of a metadata table with the
> following statement :
>
> ResultSet parts = dbMeta.getIndexInfo("aCatalog", "aMetaSchema",
> "aTable", false, false);
> ...
> if (parts != null) {
>     try {
>         while (parts.next()) {
>             String indexName = parts.getString(6);
>             String columnName = parts.getString(9);
>             short position= parts.getShort(8);
>             String direction = parts.getString(10);
>             boolean unique  = parts.getBoolean(4);
>         }
>     } finally {
>         parts.close();
>     }
> }
>
> While controling the result with pgadmin III it appears that :
>
> - Unique Index have a returned boolean unique set to false :
>     - this value should apply to Non Unique Index
> - Non Unique Index have a returned boolean unique set to true :
>     - this value should apply to Unique Index
>

If you check the javadoc for getIndexInfo you will see column four is
actually "NON_UNIQUE" not unique.

Kris Jurka