0

我收到 Hibernate 3.3.2 生成的包含双引号的查询的语法错误:

create table tbl_version (
    id int identity not null,
    "code_name" varchar(255) null,
    version_nbr varchar(255) null,
    software_name varchar(255) null,
    primary key (id)
)

Caused by: com.sybase.jdbc4.jdbc.SybSQLException: Incorrect syntax near ','.
at com.sybase.jdbc4.tds.Tds.a(Unknown Source)

有谁知道有什么问题?由于我有正确的方言,我猜 Sybase 需要一些配置更改。

4

2 回答 2

2

您还可以使用带括号的引号标识符,例如

create table tbl_version (
    id int identity not null,
    [code_name] varchar(255) null,
    version_nbr varchar(255) null,
    software_name varchar(255) null,
    primary key (id)
)

这适用于 12.5.1 的 Sybase 版本(与 Microsoft SQL Server 兼容)

于 2011-06-06T12:23:18.503 回答
0

这是 JDBC4 驱动程序的一个已知问题: https ://issues.jboss.org/browse/JBPAPP-4661

作为一种解决方法,您可以将以下内容附加到 JDBC URL:?SQLINITSTRING=set quoted_identifier on

于 2011-02-07T11:59:58.923 回答