Heim  >  Artikel  >  Datenbank  >  Informationen dazu, wie NodeJs das MySQL-Modul verwendet, um Beispiele für die Transaktionsverarbeitung zu implementieren

Informationen dazu, wie NodeJs das MySQL-Modul verwendet, um Beispiele für die Transaktionsverarbeitung zu implementieren

黄舟
黄舟Original
2017-06-04 10:02:281962Durchsuche

In diesem Artikel wird hauptsächlich NodeJs vorgestellt, das das Mysql-Modul verwendet, um die Transaktionsverarbeitung zu implementieren. Jetzt werde ich es mit Ihnen teilen Sie und auch geben Lassen Sie es uns alle als Referenz verwenden. Folgen wir dem Editor und schauen wir uns

Abhängige Module an:

1

(ps: Async-Modul kann durch
npm install mysql --save
andere

Promise-Module wie Bluebird, Q usw. ersetzt werden.)

npm install async --save
Weil das MySQL-Modul von

Node.js selbst kapselt Transaktionen. Es ist zu einfach und die direkte Verwendung führt zu einer ernsthaften Rückrufhölle. Deshalb haben wir zwei Methoden gekapselt, eine zum Initialisieren von SQL und Parametern und eine zum Ausführen von Transaktionen.

SQL und Parameter initialisieren:

Wenn Sie mehrere SQL-Anweisungen ausführen möchten, benötigen Sie:

Dann füge ich es in meinen eigenen dbHelper ein. js Darin ist die
function _getNewSqlParamEntity(sql, params, callback) {
  if (callback) {
    return callback(null, {
      sql: sql,
      params: params
    });
  }
  return {
    sql: sql,
    params: params
  };
}
-Funktion

von execTrans gekapselt, die zum Ausführen von Transaktionen

var sqlParamsEntity = [];
var sql1 = "insert table set a=?, b=? where 1=1";
var param1 = {a:1, b:2};
sqlParamsEntity.push(_getNewSqlParamEntity(sql1, param1));

var sql2 = "update ...";
sqlParamsEntity.push(_getNewSqlParamEntity(sql1, []));

//...更多要事务执行的sql

verwendet wird. Auf diese Weise kann die Transaktion ausgeführt werden:

Das obige ist der detaillierte Inhalt vonInformationen dazu, wie NodeJs das MySQL-Modul verwendet, um Beispiele für die Transaktionsverarbeitung zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn