0

理由の詳細に立ち入ることなく、PHPのuniqid関数によって生成された文字列を組み込んだ一意のテーブル名を利用するmySQLテーブルを自動生成する必要があります。そうすると、ときどき(常にではありませんが)次のクエリエラーが発生します。

無効なクエリ:SQL構文にエラーがあります。1行目の「512e1d9518d44_tbl」の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。クエリ全体:SELECT SUM(p_count)AS'pcnt' FROM 512e1d9518d44_tbl

単純な相互参照ルックアップテーブルを使用できることは知っていますが、テーブルの名前付けの非連続的な一意性を維持しながら、テーブルの名前付けルールの違反の結果であると私が信じるエラーを回避する別の方法はありますか?テーブル名を一重引用符で囲んでみましたが、同じ結果が得られました。

4

1 に答える 1

2

テーブル/列名が数字で始まる場合、バッククォートを使用してエスケープする必要があります。

SELECT SUM(p_count) AS pcnt FROM `512e1d9518d44_tbl`
于 2013-02-27T15:55:30.247 に答える