【數據庫】1.mysql相關知識_在node中的運用(九)

本次代碼就講事務的應用,主要就是看下怎麼用,所以代碼沒有精簡。

let mysql = require('mysql');
let connection = mysql.createConnection({
    host:'localhost',
    user:'root',
    password:'123456',
    database:'cms'
})
connection.connect();
//開啓事務
connection.beginTransaction((err) => {
    if(err){
        connection.rollback(err=>{throw err});//如果有錯誤則事務回滾
        throw err;
    }else{
        connection.query(`update account set balance=balance - 10 where id = 1`,(err) => {
            if(err){
                connection.rollback(err=>{throw err});//如果有錯誤則事務回滾
                throw err;
            }else{
                connection.query(`update account set balance=balance - 10 where id = 2`,(err) => {
                    if(err){
                        connection.rollback(err=>{throw err});//如果有錯誤則事務回滾
                        throw err;
                    }else{
                        connection.commit(err=>{throw err});//如果成功則提交
                    }
                })
            }
        })
    }
})
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章