TypeInfoCache - Mailing list pgsql-jdbc

From Jan de Visser
Subject TypeInfoCache
Date
Msg-id 1159c1e90712191739p77fe2335odc1b883d2076c9a5@mail.gmail.com
Whole thread Raw
In response to TypeInfoCache  (Daniel Migowski <dmigowski@ikoffice.de>)
Responses Re: TypeInfoCache  (Daniel Migowski <dmigowski@ikoffice.de>)
List pgsql-jdbc
On 12/19/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Oliver Jowett <oliver@opencloud.com> writes:
> > Daniel Migowski wrote:
> >> I think a VARCHAR(50) and text are not interchangeable.
>
> > But a "varchar" (with no limit) and "text" *are* interchangeable, which
> > is why we identify text as VARCHAR
>
> But note that varchar-with-no-limit is itself a Postgres-ism: it's
> not allowed by the standard.

I was about to write the same thing. For educational value, this is
what a popular closed-source dbms will tell you:

SQL>  create table a ( a varchar );
 create table a ( a varchar )
                            *
ERROR at line 1:
xxx-00906: missing left parenthesis


SQL> create table a (a varchar(4001));
create table a (a varchar(4001))
                          *
ERROR at line 1:
xxx-00910: specified length too long for its datatype


SQL> create table a (a varchar(4000));

Table created.



That's right, textual data longer than 4000 characters needs to go
through the CLOB interface. And my license doesn't permit me to say
what that does to performance :)

So what Daniel is trying to say here is that Crystal Report probably
croaks on a column for the type is Types.VARCHAR but which does not
have a maximum length associated with it.

I think his patch is good.

jan

pgsql-jdbc by date:

Previous
From: Tom Lane
Date:
Subject: Re: TypeInfoCache
Next
From: Kris Jurka
Date:
Subject: Re: TypeInfoCache