mysql - 使用node-mysql从每个结果执行附加查询

标签 mysql node.js node-mysql

我正在尝试让 Node -mysql 连接查询与原始查询的结果串联工作。全部设置完成后,这就是有问题的部分。看来连接已经结束了。如何确保 processRow 中的查询与原始结果同时执行?

function processRow(row, callback){
    connection.query('INSERT INTO other_table VALUES (?)', row.id, function(err, rows, fields) {
        if (err) throw err;
    });

    callback();
}

var query = connection.query('SELECT id from tbl limit 2');

query
    .on('error', function(err){
        throw err;
    })
    .on('fields', function(fields){

    })
    .on('result', function(row){
        processRow(row, function(){
            connection.resume();
        });
    })
    .on('end', function(){
        //
    });

connection.end();

https://github.com/felixge/node-mysql

最佳答案

function processRow(row, callback){
    connection.query('INSERT INTO other_table VALUES (?)', row.id, function(err, rows,    fields) {
        if (err) throw err;
        callback();//callback should go here   
    }); 
}

然后你可以结束连接:

query.on('result', function(row){
    processRow(row, function(){
        connection.end(); //maybe end the connection once insertion into the table is done
    });
 })

关于mysql - 使用node-mysql从每个结果执行附加查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24054323/

相关文章:

MySQL.数据 : "Object reference not set to an instance of an object" when trying to Connect

node.js - 为什么只有当我尝试使用 find 函数时,我的 Sequelize 模型才未定义?

javascript - 模块 MySQL Nodejs

mysql - 在nodejs中使用现有的mysql模式

mysql - 无法关闭与 NodeJS 的 mysql 连接

mysql - mysql上的sql关于join

mysql: 0 而不是空表

javascript - 回调函数示例

node.js - 匿名函数import/no-anonymous-default-export的意外默认导出

PHP 和 MySQL 错误 : mysqli_connect() [function. mysqli-connect]: (HY000/2005): 未知的 MySQL 服务器主机