nodejs事务使用总结

粗暴使用

var mysql = require('mysql');
//创建连接
var connection = mysql.createConnection(this.sails.config.connections.myApp);
connection.connect(function(err) {
  if(err){ return next(err); }
});
//外面也可以嵌套for循环
connection.beginTransaction(function(err) {
    //可以嵌套多层,看你心情
    connection.query(sql1, function(err, result) {
        if(err){
            //回滚事务
            connection.rollback(function() { if(err){ return next(err); } });
        }
        connection.query(sql2, function(err, result) {
            if(err){
                connection.rollback(function() { if(err){ return next(err); } });
            }
            //提交事务
            connection.commit(function(err) {
                if(err){
                    connection.rollback(function() { if(err){ return next(err); } });
                }
                //关闭连接
                connection.end();
            });
        });
    });
});

    原文作者:pengj
    原文地址: https://segmentfault.com/a/1190000017301659
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞