[odb-users] Re: SQL identifier quoting in Oracle

Boris Kolpackov boris at codesynthesis.com
Mon Jan 6 00:55:10 EST 2014


Hi,

buptstehc at gmail.com writes:

> I have another question about odb.

In this case please start a new thread with a proper subject, as
discussed in the posting guidelines:

http://www.codesynthesis.com/support/posting-guidelines.xhtml


> [...] the generated sql file add table name and field name with
> double quote like this:
>
> CREATE TABLE "JupiterMessage" (
>   "id" NUMBER(20) NOT NULL PRIMARY KEY,
>   "name" VARCHAR2(512) NULL,
>   "content" CLOB NOT NULL,
>   "local" VARCHAR2(512) NULL,
>   "remote" VARCHAR2(512) NULL,
>   "create_time" VARCHAR2(512) NULL,
>   "processed" NUMBER(1) DEFAULT 0 NOT NULL);
>
> how can i remove ?

You cannot. ODB always quotes all the SQL identifiers to avoid
clashes with keywords, etc.

You didn't say why you want quoting removed but I suspect it
has something to do with Oracle's automatic upper-casing of
unquoted identifiers. If that's the case, take a look at the
--sql-name-case ODB compiler option as well as the SQL NAME
TRANSFORMATIONS section in the ODB command line manual:

http://www.codesynthesis.com/products/odb/doc/odb.xhtml

Boris



More information about the odb-users mailing list