pool.getConnection(function(err, connection){
});使用回调函数的参数connection来查询数据库。最后使用
connection.realease()方法释放数据库连接。
pool.getConnection(function(err, connection){
connection.query( "select * from table1", function(err, rows){
if(err) {
throw err;
}else{
console.log( rows );
}
});
connection.release();
});执行多条查询语句
为了安全起见,默认情况下是不允许执行多条查询语句的。要使用多条查询语句的功能,就需要在创建数据库连接的时候打开这一功能:
var connection = mysql.createConnection( { multipleStatements: true } );这一功能打开以后,你就可以像下面的例子一样同时使用多条查询语句:
connection.query('select column1; select column2; select column3;', function(err, result){
if(err){
throw err;
}else{
console.log(result[0]); // Column1 as a result
console.log(result[1]); // Column2 as a result
console.log(result[2]); // Column3 as a result
}
});node.js中mysql连接池的使用
如果不想程序在查询数据时卡死或等待过长时间,一般不推荐在node中开启一个连接后全部查询都用这个链接并且不关闭,因为,你试了就知道为什么了
Node.js mysql连接池模块
1. 安装node的mysql模块
npm -install -g node-mysql
2. 建立一个类库,就叫mysql.js吧,然后内容如下:
var mysql=require("mysql");
var pool = mysql.createPool({
host: 'localhost',
user: 'user',
password: 'password',
database: 'database',
port: port
});
var query=function(sql,callback){
pool.getConnection(function(err,conn){
if(err){
callback(err,null,null);
}else{
conn.query(sql,function(qerr,vals,fields){
//释放连接
conn.release();
//事件驱动回调
callback(qerr,vals,fields);
});
}
});
};
module.exports=query;3. 在js类使用如下
var query=require("./lib/mysql.js");
query("select 1 from 1",function(err,vals,fields){
//do something
});希望本文所述对大家nodejs程序设计有所帮助。









