嗨,我得到了一个奇怪的语法错误 错误是:您的SQL语法中有错误,请检查与您的MySQL服务器版本对应的手册,以便在第1行使用右侧sybtax:data。 错误:1064 SqlState:'42000'
这是要插入数据库的代码:
function addCategory(category){
var execution = q.defer();
var query = 'INSERT INTO categories SET :data';
console.log(query);
connection.query(query,{data:category}, function(err, res){
if(err){
execution.reject(err);
console.log(err);
return;
}
execution.resolve(res);
});
return execution.promise;
}
虽然此函数将获得一个类别作为json对象。 奇怪的是,这个函数以前工作过,它的编写方式和给出错误的方式相同。如果你能帮我解决这个问题,我会非常感激,谢谢。
答案 0 :(得分:0)
您尝试运行的查询无效;查看INSERT syntax文档。标准INSERT查询类似于以下内容:
INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2);
因此,在您的情况下,您需要将查询更新为:
var query = 'INSERT INTO categories (category) VALUES(:data)';
(当然,您的列名称为category
)