8

次のようなmysqlクエリを実行しています:

Select * from "User";

そしてそれは戻ります:

SQL 構文にエラーがあります。1 行目の '"User"' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

エラーは二重引用符と関係"があります。select ステートメントをそのままにして、mysql に二重引用符を処理させることはできますか?

4

1 に答える 1

14

この投稿から取得:

SET GLOBAL SQL_MODE=ANSI_QUOTES;

個人的にテストしたときは、次のようにする必要がありました。

SET SQL_MODE=ANSI_QUOTES;

他に方法はないと思います。

http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html#sqlmode_ansi_quotes

ANSI_QUOTES

「」を扱う 文字列の引用文字としてではなく、識別子の引用文字 (「`」の引用文字など) として。このモードが有効な場合でも、「`」を使用して識別子を引用できます。ANSI_QUOTES が有効になっている場合、二重引用符を使用してリテラル文字列を引用することはできません。これは、二重引用符が識別子として解釈されるためです。

于 2012-12-14T19:21:13.593 に答える