在node中使用MySQL语句插入数据一直报语法错误,这里语法哪里有问题吗

因为character是mysql的保留字(关键字),如果需要使用保留字(关键字)当做字段名或表名时,则必须要在增删改查语句的字段名或表名中添加反引号,否则会造成字段名和保留字(关键字)冲突,从而引发错误:
let sql = "insert into catinfo (kw, name, ename, `character`, detail, imgUrl, imgList) values (?, ?, ?, ?, ?, ?, ?);";
db.query(sql, [kw, name, ename, character, detail, imgUrl, imgList], function(err, result) {
// 继续实现你的逻辑
})