0

次のMySQLクエリがあります:

INSERT INTO ipi_messages (Message_userID, Message_fromName, Message_fromEmail, Message_subject, Message_body) VALUES(`0`, `hope`, `thisworks@gmail.com`, `i hope`, `this works`)

私のデータベーススキーマは次のとおりです。

ここに画像の説明を入力

私の人生では、そのエラーがどのように発生する可能性があるのか​​ 理解できません。0MySQLが列の 1 つとして検索しようとするのはなぜですか? コードの列宣言部分にも明らかにありません。

では、なぜエラーが発生するのUnknown column '0' in 'field list'ですか?

4

3 に答える 3

8

'文字列値には通常の引用符を使用する必要があります。バッククォートは、列名とテーブル名を囲むために使用されます。

于 2013-06-07T08:19:31.643 に答える
0
INSERT INTO ipi_messages (Message_userID, Message_fromName, Message_fromEmail, Message_subject, Message_body) VALUES('0', 'hope', 'thisworks@gmail.com', 'i hope', 'this works')

文字列を一重引用符または二重引用符で囲む必要があります。引用符の代わりに ~(傾斜) 記号を使用してテーブルに挿入する値を囲み、エラーが発生しました。~ で囲まれた文字列はテーブルの列名と見なされるためです。 .

于 2013-06-07T08:19:45.630 に答える
0

Message_userID が整数フィールドである可能性はありますか? その場合、引用符は必要ありません ('0' --> 0)

于 2013-06-07T08:22:03.373 に答える