Re: Issue with DataBaseMetaData.GetTypeInfo() - Mailing list pgsql-jdbc

From Kris Jurka
Subject Re: Issue with DataBaseMetaData.GetTypeInfo()
Date
Msg-id 47F11CA2.4040906@ejurka.com
Whole thread Raw
In response to Issue with DataBaseMetaData.GetTypeInfo()  ("Mats Ekelund" <mats.ekelund@zenon.se>)
Responses Re: Issue with DataBaseMetaData.GetTypeInfo()  ("Mats Ekelund" <mats.ekelund@zenon.se>)
List 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

pgsql-jdbc by date:

Previous
From: Kris Jurka
Date:
Subject: Re: Documentation problem with LargeObjectManager
Next
From: David Goodenough
Date:
Subject: Re: Documentation problem with LargeObjectManager