node新手问题: 用的是oracle官方的包,oracledb.1.4.0,在创建连接池的时候,能把createPool和getConnection分开来写吗,先建立连接池,再创建连接,我如下改写了代码,却报错说getConnection不能识别,不明所以:
var config = require("../config").initConfig();
var oracledb = require("oracledb");
var m_Pool = null;
var numRows = 2;
var initOracleConnectPool = function() {
m_Pool = oracledb.createPool(config.m_Connect, function(err, pool) {
/* pool.getConnection( function(err , connection) {
if (err) { console.error(err.message); return; }
connection.execute(
"SELECT * " +
"FROM user_table " ,[],
function(err, result)
{
if (err) { console.error(err.message); return; }
else {
console.log(result.metaData);
console.log("begin");
fetchRowsFromRS(connection,result.resultSet,numRows);
//console.log(result.rows);
}
});
});*/
});
}
能不能改写为以下格式,方便先创建连接池,用的时候直接建连接就好:
//创建连接池
var initOracleConnectPool = function() {
m_Pool = oracledb.createPool(config.m_Connect, function(err, pool) {
console.log("the pool established ");
});
}
//创建连接,执行查询
exports.query = function() {
if (!m_Pool) {
initOracleConnectPool();
}
medusa_Pool.getConnection(function(err, connection) {
if (err) {
console.error(err.message);
return;
}
connection.execute(
"SELECT * " +
"FROM user_table ", [], {
resultSet: true,
prefetchRows: 2
},
function(err, result) {
if (err) {
console.error(err.message);
return;
} else {
console.log(result.metaData);
console.log("begin");
fetchRowsFromRS(connection, result.resultSet, numRows);
//console.log(result.rows);
}
});
});
}