[
https://issues.apache.org/jira/browse/EMPIREDB-209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14113539#comment-14113539
]
Rainer Döbele commented on EMPIREDB-209:
----------------------------------------
Hi Shaun,
are you sure about this?
I could not find a good description for getIdentifierQuoteString() and how to
use it.
All drivers I have tried (hsqldb, oracle, sqlserver) always return a double
quote character.
IMO quoting should be the same for table names, column names and alias names.
That means for sqlserver you can write
select [order] as [order] from
or
select "order" as "order" from
In fact both expressions work.
Hence I don't see why we could not use appendElementName().
Rainer
> Using a reserved word as a column alias in a select statement.
> --------------------------------------------------------------
>
> Key: EMPIREDB-209
> URL: https://issues.apache.org/jira/browse/EMPIREDB-209
> Project: Empire-DB
> Issue Type: New Feature
> Components: Core
> Affects Versions: empire-db-2.4.2
> Reporter: Shaun Forbes
> Priority: Minor
> Labels: newbie
>
> I believe it's possible in sql to use a reserved word as an alias in a select
> statement if it's correctly quoted (it is for the databases I've tested
> anyway).
> Checking for and quoting reserved word aliases does not currently appear to
> be implemented.
> To overcome this limitation I've added an method to the DBDatabaseDriver
> class to add the alias and perform any required quoting and altered the
> DBAliasExpr class to delegate the adding of the alias to the DBDatabaseDriver
> class.
> The character I'm using for quoting is determined from the
> getIdentifierQuoteString() method of the database connection metadata class,
> and I've used the detectQuoteName(String name) method in DBDatabaseDriver to
> determine if the alias needs to be quoted.
> Patches available if required.
--
This message was sent by Atlassian JIRA
(v6.2#6252)