【问题标题】:Insert array to MySQL in node.js?在node.js中将数组插入MySQL?
【发布时间】:2020-02-10 01:15:17
【问题描述】:

如何使用 nodejs 将数组插入 MySQL 中的表?如果数组只有一个,则下面的代码有效,但如果数组中有更多项,我会收到错误:“ER_WRONG_VALUE_COUNT_ON_ROW”

我需要在表中插入所有数组值。我怎样才能做到这一点?

这是我目前得到的:

        let workoutArray = [];

        result.forEach(function(name) {
            workoutArray.push(name.exercise);
        });

    let sql2 = 'INSERT INTO reps (email, date, workout, exercise) VALUES (?,?,?,?)';
    connection.query(sql2, [user, addDate, workoutToIndex, workoutArray], function (error2, result2) { 
            if (error2) throw error2;
            console.log(result2);
    });


        response.end();
});

【问题讨论】:

    标签: mysql arrays node.js


    【解决方案1】:

    不要将数组作为参数发送,而是尝试从数组发送数组。

    例子:

        let workoutArray = [];
    
        result.forEach(function(name) {
            workoutArray.push(name.exercise);
        });
    
    let sql2 = 'INSERT INTO reps (email, date, workout, exercise) VALUES (?,?,?,?)';
    connection.query(sql2, [[user, addDate, workoutToIndex, workoutArray]], function (error2, result2) { 
            if (error2) throw error2;
            console.log(result2);
    });
    
    
        response.end();
    });
    

    【讨论】:

    • 聪明的想法,但它给了我一个语法错误:“ER_PARSE_ERROR: You have an error in your SQL syntax”
    猜你喜欢
    • 2020-03-15
    • 1970-01-01
    • 2021-11-01
    • 2017-01-30
    • 2013-03-05
    • 1970-01-01
    • 2011-11-10
    • 2011-04-27
    • 1970-01-01
    相关资源
    最近更新 更多