3

Derby で列名として予約キーワードを使用できますか? テスト目的で、データベース スキーマを Derby に移行しようとしています。そのため、スキーマ構造 (列名など) を変更したくありません。

問題は、Derby で列名が「open」のテーブルを作成するにはどうすればよいかということです。テーブルの例として:

create table test ( open integer );

列名を引用しようとしましたが、これまでのところ成功していません...

java.sql.SQLSyntaxErrorException: Syntax error: Encountered "open" at line 1, column 21.
    at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
4

1 に答える 1

8

予約語を引用する標準的な方法 (Derby は、ほぼすべての DBMS と同様にその点で標準に従っています) は、二重引用符を使用することです。

create table test ( "OPEN" integer );

ただし、これを行うと、列 (またはテーブル) 名の大文字と小文字が区別されることに注意してください。または"OPEN"とは異なる列です。"open""Open"

引用が必要な名前は使用しないことを強くお勧めします。

于 2012-11-13T08:34:30.640 に答える