代码:“ER_PARSE_ERROR”,错误号码:1064,mySQL

时间:2017-11-19 00:23:40

标签: javascript mysql sql node.js

尝试基于一个表单插入多个插入时出现以下错误

“sql:”INSERT INTO(pokemon(pokemonname)VALUES('sadfasd'),INSERT INTO位置(locationname)VALUES('asdfasdf'),INSERT INTO primarymove(primarymovename)VALUES('asdf'),INSERT INTO类型(typename)VALUES('2'))“

sqlMessage:“您的SQL语法中有错误;请查看与您的MariaDB服务器版本对应的手册,以便在'(pokemon(pokemonname)VALUES('sadfasd')附近使用正确的语法,INSERT INTO位置(locationname) )''第1行“,”

以下是我的帖子请求

   router.post('/', function(req, res){
    var mysql = req.app.get('mysql');
    var sql = "INSERT INTO pokemon (pokemonname) VALUES (?), INSERT INTO location (locationname) VALUES (?), INSERT INTO primarymove (primarymovename) VALUES (?), INSERT INTO type (typename) VALUES (?)";
    var inserts = [req.body.pokemonname, req.body.locationname, req.body.primarymovename, req.body.typename];
    sql = mysql.pool.query(sql, inserts, function(error, results, fields){
            if(error){
                    res.write(JSON.stringify(error));
                    res.end();
            } else{
                    res.redirect('/pokemon');
             }
    });

});

我将假设它与我的多个INSERT INTO请求有关,我基本上尝试执行多个插入语句到各种不同的表。还是不可能?

1 个答案:

答案 0 :(得分:0)

您需要用';'

替换逗号