Re: Issue with DataBaseMetaData.GetTypeInfo()

From: Kris Jurka <books(at)ejurka(dot)com>
To: Mats Ekelund <mats(dot)ekelund(at)zenon(dot)se>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Issue with DataBaseMetaData.GetTypeInfo()
Date: 2008-03-31 17:17:22
Message-ID: 47F11CA2.4040906@ejurka.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Mats Ekelund wrote:
>
> I have attached the patch.

Please keep the mailing list CCed so all can see/participate in the
discussion.

+ else if ( typname.equals("varchar") ||
typname.equals("char") || typname.equals("text") ||
+ typname.equals("name") ||
typname.equals("timestamp") || typname.equals("timestamptz") )
+ {
+ tuple[3] = connection.encodeString("'");
+ tuple[4] = connection.encodeString("'");
+ }

Your patch hard codes this for a couple of types, but it doesn't seem to
be a general solution. It seems impossible to enumerate all the
possible types that require quoting. What about any user defined types,
we can't possible know what those are in the driver?

If you were going to hardcode a list, you need to hardcode the list of
types that don't require quoting because that should at least be a fixed
list. A more general solution would be to put this information into
TypeInfoCache so you could say something like
TypeInfoCache.requiresQuoting(typeOid).

Kris Jurka

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message David Goodenough 2008-03-31 18:01:42 Re: Documentation problem with LargeObjectManager
Previous Message Kris Jurka 2008-03-31 17:07:07 Re: Documentation problem with LargeObjectManager