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`)

我的数据库架构是:

在此处输入图像描述

在我的一生中,我无法弄清楚这个错误是怎么可能的。为什么 MySQL 会尝试查找0列之一?显然,它甚至不在代码的列声明部分中。

那么为什么我会收到错误消息Unknown column '0' in 'field list'

4

3 回答 3

8

您需要'对字符串值使用常规引号。反引号用于将列名和表名括起来。

于 2013-06-07T08:19:31.643 回答
0

难道你的 Message_userID 是一个整数字段?在这种情况下,您不需要引号 ('0' --> 0)

于 2013-06-07T08:22:03.373 回答
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')

您需要将字符串括在单引号或双引号中。而不是引号,您使用 ~(tilt) 符号将要插入到导致错误的表中的值括起来。因为在 ~ 中包含的字符串将被视为表列名.

于 2013-06-07T08:19:45.630 回答