本文实例讲述了Node.js实现mysql连接池使用事务自动回收连接的方法。分享给大家供大家参考,具体如下:

var mysql = require('mysql'),

Connection = require('mysql/lib/Connection.js');

var pool = mysql.createPool({

host: '127.0.0.1',

database: 'myDB',

port: 3306,

user: 'root',

password: 'root',

debug: false,

connectionLimit: 3

});

var execPool = function() {

pool.getConnection(function(err, conn) {

transAutoRelease(conn);

conn.beginTransaction(function(err) {

if (err) throw err;

conn.query("INSERT INTO test(id,name,date,test) values(1,'123',now(),1)",

function(err, ret) {

if (err) {

console.error(err);

conn.rollback(function() {});

} else {

console.log(ret);

conn.query('UPDATE test set id=12321312 where id=1', function(err, ret) {

if (err) {

console.error(err);

conn.rollback(function() {

});

} else {

conn.commit(function() {

console.log('success' + JSON.stringify(ret));

});

}

});

}

});

});

});

}

function after(fn, cb) { return function() {

fn.apply(this, arguments);

cb();

}

}

function transAutoRelease(conn) {

if (conn.commit == Connection.prototype.commit)

conn.commit = after(conn.commit, release);

if (conn.rollback == Connection.prototype.rollback)

conn.rollback = after(conn.rollback, release);

function release() {

if (conn) {

conn.release();

}

}

}

var intervalStartProcess = function() {

setInterval(function() {

execPool();

}, 1000);

}

for (var i = 5 - 1; i >= 0; i--) {

intervalStartProcess();

}

希望本文所述对大家nodejs程序设计有所帮助。

MySQL会回收使用中的连接吗_Node.js实现mysql连接池使用事务自动回收连接的方法示例...相关推荐

  1. node mysql 连接池创建_Node.js使用MySQL连接池的方法实例

    本文实例讲述了Node.js使用MysqL连接池的方法.分享给大家供大家参考,具体如下: Nodejs如何使用MysqL Nodejs要连接MysqL,可以使用Nodejs的MysqL驱动来实现.比如 ...

  2. js修改mysql数据库数据_Node.js操作mysql数据库增删改查

    关于node.js操作mysql数据库的相关介绍请阅读全文吧.下文介绍的非常详细,具体内容如下所示: 安装mysql模块 npm install mysql 数据库准备 mysql server所在的 ...

  3. node mysql 查询_Node.js使用mysql进行查询详解

    本篇教程介绍了Node.js使用mysql进行查询详解,希望阅读本篇文章以后大家有所收获,帮助大家对Node.js的理解更加深入. < 因为返回的是个对象 var selectSql1=&quo ...

  4. expressjs如何做mysql注入_Node.js+Express+Mysql 实现增删改查

    这次选用nodejs+express+mysql 使用http作为客户端,express框架搭建服务端,从而实现数据的增删改查.这篇文章可以算作上篇文章的升级篇,加入了和数据库的交互. 安装 node ...

  5. nodejs mysql嵌套查询_node.js,_nodejs mysql查询内嵌套修改,node.js - phpStudy

    nodejs mysql查询内嵌套修改 http://www.cnblogs.com/kongxi... 我通过这个案例 把查询 内 再嵌套一个update为什么就报错了呢 应该怎么写 假如我先取出s ...

  6. node输出mysql的数据_node.js+async+mysql 查询数据输出问题,如何分别统计、提取每个sql语句的结果!!...

    展开全部 首先这是一个很简单的问e5a48de588b63231313335323631343130323136353331333335343366题,cnodejs这个论坛node大神算是最多的了, ...

  7. php7 mysql json 小程序_微信小程序 JS+PHP+MYSQL 怎么获取JSON数据并显示

    很简单的想实现这个功能 描述一下微信小程序端用JS发出请求,用的微信自带的wx.request checkBoilerCode:function(e){ if (e.detail.value.boil ...

  8. 基于javaweb+mysql的律师事务所律师管理系统(java+SSM+HTML+JS+jsp+mysql)

    项目介绍 管理员角色包含以下功能: 管理员登录,律师信息管理,预约审核管理,预约记录查看,拒绝预约查询,注册一个用户,个人信息修改等功能. 用户角色包含以下功能: 用户登录,律师信息查看,预约记录查询 ...

  9. node mysql 批量写入_请问如何使用node.js在MySQL中进行批量插入

    catspeake 我四处寻找关于批量插入对象的答案.Ragnar123的回答使我得出了这样的结论:function bulkInsert(connection, table, objectArray ...

最新文章

  1. Linux新建用户名
  2. OFDM同步算法之Minn算法
  3. php access control allow origin,js请求跨域问题--Access-Control-Allow-Origin
  4. mcq 队列_MCQ | 密码学中作为IDEA,DES,AES,RSA的块密码
  5. Linux 终端仿真程序Putty
  6. 通过jdbc的mysql驱动连接oceanbase mysql模式数据库
  7. pwershell custom objects
  8. Windows版本Apache+php的Xhprof应用__[2]
  9. 自然语言处理——第一章 绪论
  10. Xmarks无法同步问题解决(转)
  11. 在开放社区中的六年,我做着喜欢且擅长的事情,利他而自利
  12. 软件项目量化管理(CMMI高成熟度)实践经验谈——之项目管理过程策划篇
  13. luogu2791 幼儿园篮球题 第二类斯大林数(特)卡常NTT
  14. 数据库SQL实战 --42.将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
  15. 关于Android写入文件失败的问题
  16. 机器学习预测世界杯:巴西夺冠
  17. 书——《你的生命有什么可能》
  18. 功能简单却流量巨大,你想不到的海外APP
  19. 【信息安全】-安全协议
  20. 【自然语言处理】Transformer 讲解

热门文章

  1. python2和python3同时存在如何使用pip
  2. java --String类解决面试问题
  3. 《 测试反模式:有效规避常见的92种测试陷阱》——1.3 什么是缺陷
  4. 7个杀手级的开源监测工具
  5. PHP——explode的应用(获取字符串,拆为下拉列表)
  6. Windows10 + VS2015 (Win SDK10)环境下的64位 VTK编译小结
  7. MVC中,视图的Layout使用
  8. escape sequence
  9. 企业做大的捷径:“复印”成功的商业模式
  10. 算法每日练习之判断完数