nodejs mysql pool 只能插入10条记录或者较少记录
来源:互联网 发布:彩虹源码安装 编辑:程序博客网 时间:2024/06/16 05:03
BEGIN;
解决方案:从连接池获取到的Connection,执行完操作后,必须及时关闭!
即:connection.end();
使用后发现console有打印出警告信息,大致意思为 end() 方法已过期,所以应该使用 connection.release() 方法!
测试环境:
1、首先nodejs环境下,安装 node-mysql,注意是“felixge/node-mysql”,不是“node-mysql”
2、我自己创建了一个简单的util,操作数据,代码如下
/** * 数据库操作 * author: yzChen 2014-5-6 21:58:57 */var mysql = require('mysql');var pool = mysql.createPool({host: '127.0.0.1',user: 'root',password: 'root',database:'nodejs',port: 3306});exports.execSql = function(sql, fn) {pool.getConnection(function (err, conn) {conn.query(sql, function (err1, res1) {fn(err1, res1);});});}3、调用时,就是util.execSql('your sql', function(err, res) { // your code })
但是需要注意的是,每次执行sql都是从连接池获取一个Connection!
下面使用测试代码,进行简单的测试:
var sql = 'insert test(name) values(UUID())';for(var i = 0; i < 15; i++) {dbUtil.execSql(sql, function(err, res) {if (err) console.log(err);console.log("INSERT Return ==> ");console.log(res);});}
执行完后,查看数据库记录,发现只有10条记录。
最终排查各种原因后,结果是因为每次获取Connection后,没有关闭!
只需要在
conn.query(sql, function (err1, res1) {的后面添加
conn.release(); // 执行完成后,需要及时关闭连接一行代码即可。
重新测试,查询数据库,共计新增15条记录。
END;
--- --- --- ---> 点击查看更多最新原创博文<--- --- --- ---
0 0
- nodejs mysql pool 只能插入10条记录或者较少记录
- mysql插入多条记录
- MySQL插入多条记录
- mysql 快速插入(insert)多条记录
- 一次插入多条记录 [mysql]
- mysql一次插入多条记录问题
- MySQL使用INSERT插入多条记录
- mysql-一次插入多条记录
- MySQL使用INSERT插入多条记录
- mysql 单条insert语句,插入多条数据记录
- 插入10万条记录测试
- MySQL插入多条记录和REPLACE语句
- mysql中如何使用INSERT一次性插入多条记录
- mysql中插入多条记录-微软批处理
- mysql 一条sql语句插入多条记录
- mysql获得刚插入的那条记录的id
- MySQL使用一条INSERT语句插入多条记录
- mysql使用游标 触发一次 插入多条记录
- dell 服务器架构I/O高性能的SSD阵列曲折经历
- ant泛型编译问题解决及环境搭建
- 点覆盖集和点独立集
- 腾讯API文档
- ASP调用WEBSERVICE文档
- nodejs mysql pool 只能插入10条记录或者较少记录
- 史上最全鸡鸭美味做法,看着都流口水了!
- SQL语句相关总结
- ecmall 修改用户中心左侧菜单
- silverlight的DataGrd行数
- android:configChanges 问题
- 【Web优化】Yslow优化法则(四)启用Gzip压缩
- 腾讯SDK帮助文档
- MFC 字符串解析,分割字符串