如何运行动态查询数组的事务

时间:2017-07-24 17:14:04

标签: mysql node.js transactions

我有一个动态的查询数组,例如: -

arrQueries=["update table1 set field1='val1',field2='val2' where 
id=5;","update table1 set field3='val3',field4='val4' where id=10;" ];

如何通过循环遍历数组来运行事务?

1 个答案:

答案 0 :(得分:0)

我使用了node-mysql-transaction

    var transaction = require('node-mysql-transaction');
var trCon = transaction({connection: [mysql.createConnection, {
            // mysql connection config
            user: ...,
            password: ...,
            database:...,
            host:..
        }], dynamicConnection: 32, timeout: 600});
arrQueries=["update table1 set field1='val1',field2='val2' where 
id=5;","update table1 set field3='val3',field4='val4' where id=10;" ];

 var chain = trCon.chain();
                chain.
                on('commit', function () {
                    console.log('commit');                           
                    return res.send("commit");

                }).
                on('rollback', function (err) {
                    console.log('rollback');
                    return res.send("rollback");
                });

                for (var i = 0; i < arrQueries.length; i += 1) {
                    chain.query(arrQueries[i]);
                }