MySQL插入错误: ER_BAD_FIELD_ERROR: Unknown column '2525' in 'field list'

标签 mysql sql

var convID = 2525;
var contactUsername = 'blabla';
var userId = 100;
var contactId = 200;

var sql = "INSERT INTO contacts (FK_OWNERID, FK_USERID, FC_CONTACTNAME, `CONVERSATION_ID`)
                     VALUES (" + mysql.escape(userId) + "," + mysql.escape(contactId) + "," + mysql.escape(contactUsername) + "," + convID + "),
                     (" + mysql.escape(contactId) + "," + mysql.escape(userId) + "," + mysql.escape(username) + "," + convID + ")";

`错误:ER_BAD_FIELD_ERROR:“字段列表”中的未知列“2525” CONVERSATION_ID 和 FC_CONTACTNAME 的字段均为 varchar(32),另外 2 个字段为 int。

这个查询有什么问题?我什至在 CONVERSATION_ID 周围加上了反引号,它认为 convID 变量是一列...

编辑:

如果我的查询就是这样,那么它就有效:

        var sql = "INSERT INTO contacts (`FK_OWNERID`, `FK_USERID`, `FC_CONTACTNAME`)
                 VALUES (" + mysql.escape(userId) + "," + mysql.escape(contactId) + "," + mysql.escape(contactUsername) + "),
                 (" + mysql.escape(contactId) + "," + mysql.escape(userId) + "," + mysql.escape(username) + ")";

最佳答案

制作

" + convID + "

'" + convID + "'

很可能它是一个字符串,数据类型是 varchar,所以你需要用单引号括起来。

关于MySQL插入错误: ER_BAD_FIELD_ERROR: Unknown column '2525' in 'field list' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23020806/

相关文章:

MySQL使用两个时间戳查找15分钟内的记录

mysql - 如何排序 LEFT JOIN 的结果

SQL、分析函数、行号

显示多个条目及其计数的 SQL 查询

php - 从多个表中选择并显示到表中

mysql - 如何更新这个?

php - 使用 PHP 如何从数据库表中检索某个字段值,然后将该单个字段值输入到新表中

mysql - 如何在 Perl6 中使用 DBIish 连接到本地 MySQL Server 8.0

php - MySQL COUNT 跨多个表的不同行数?

sql - 这种情况需要一个 SQL 查询