[hibernate-dev] Table and quoted names

Steve Ebersole steve at hibernate.org
Thu Sep 30 09:01:12 EDT 2010


True enough.  Attached is the code I developed for Hibernate 4 to handle
this better.  Care to gander?


On Thu, 2010-09-30 at 15:09 +0300, Dmitry Geraskov wrote:
> Hi, guys,
> while I was fixing some bug in hibernate tools I looked through some 
> hibernate code.
> And it seems to me that hibernate is not ready in some cases for quoted 
> identifiers.
> 
> Here I would like to highlight some potentially weak places in key class 
> org.hibernate.mapping.Table.
> It doesn't ready for quoted catalog identifiers.
> There are (catalog, schema, name) fields and (schemaQuoted,quoted). 
> There is no "catalogQuoted", but probably it should be.
> The static method qualify() in most cases used to generate unique key 
> and cache some data. It is used in such way:
> 
> String key = Table.qualify(catalog, schema, name);
> and it is a potentially(non-unique) problem if there are names with dots.
> "catalog.my.schema.table" = "catalog.my"."schema"."table" or 
> "catalog"."my.schema"."table".
> 
> I didn't find any usage of Table#isSchemaQuoted(), and 
> DatabaseMetadata#getTableMetadata(..., isQuoted) called with 
> Table#isQuoted() parameter. Perhaps there should be
> isQuoted = Table#isQuoted() || Table#isSchemaQuoted() || 
> Table#isCatalogQuoted() ?
> 
> Dmitry Geraskov.
> _______________________________________________
> hibernate-dev mailing list
> hibernate-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev

-- 
Steve Ebersole <steve at hibernate.org>
http://hibernate.org


More information about the hibernate-dev mailing list