Heim > Web-Frontend > js-Tutorial > Detaillierte Einführung in den Fallcode, wie NodeJs das MySQL-Modul verwendet, um die Transaktionsverarbeitung zu implementieren

Detaillierte Einführung in den Fallcode, wie NodeJs das MySQL-Modul verwendet, um die Transaktionsverarbeitung zu implementieren

黄舟
Freigeben: 2017-06-01 10:10:40
Original
1181 Leute haben es durchsucht

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
Nach dem Login kopieren
andere

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

npm install async --save
Nach dem Login kopieren
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
  };
}
Nach dem Login kopieren
-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
Nach dem Login kopieren

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

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in den Fallcode, wie NodeJs das MySQL-Modul verwendet, um die Transaktionsverarbeitung zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage