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 に答える