1

私はこの問題を抱えています.私のウェブサイトでプロフィールページにコメントしようとしていますが、クリックして送信すると、

You have an error in your SQL syntax; check the manual that corresponds to 
your MySQL server version for the right syntax to use near 'to, msg, author,time)
VALUES ('52', Test','Sakaio911', NOW())' at line 1

コメントをデータベースに挿入するだけで、どの列が表示されるかがわかります。何が間違っているのかわからないので、それを引き起こすのは NOW() ですか。

4

5 に答える 5

6

エラー メッセージは、'to' 列名を示しています。ドキュメントによると、その名前はキーワードとして予約されています。おそらく、その col の名前を変更するか、そのテーブルを使用するために体操をする必要があります。

http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html

于 2012-07-23T14:48:37.493 に答える
1

列名の名前を変更したくない場合は、コンテキスト内で`を使用してエスケープする必要があります。

 ... `to`, msg, author, time) VALUES ('52', 'Test','Sakaio911', NOW())
于 2012-07-23T14:54:22.333 に答える
0

('52'、テスト'、'Sakaio911'、NOW()) '

insertステートメントは、フィールド名とその値の区切り文字としてコンマを使用します。「52」と「テスト」の間に何かが欠けているようです。Testの前に一重引用符を短くしますか?それとも文字列全体をこのように二重引用符で囲む必要がありますか?「これ」

于 2012-07-23T14:54:20.983 に答える
0

SQLクエリとphpコード行自体の両方にセミコロンがあることを確認してください.1つのセミコロンは「」マークの内側にあり、もう1つはコード行を終了する外側にあります.

于 2012-07-23T14:49:52.220 に答える
0

フィールド名を後ろのティックで囲みます...たとえば、「to」、「msg」などです。これにより、その特定の問題が解決するはずです。

于 2012-07-23T14:50:44.800 に答える