我对使用NodeJS的oracledb很新。 我想做一些依赖的多个sql调用。 在第一次sql查询之后,我需要使用结果执行第二个sql查询,第二个查询的结果用于第三个。
我试图找到一些例子,却找不到任何例子。
编辑1 :添加用于链接sql查询的代码。 在执行查询sqltoExecute之前,我需要通过执行设置" set role"的查询来配置连接。然后另一个到#34;设置包" 在执行我的最终查询之前。
它只执行设置角色的第一个查询,然后不执行任何操作。
我在Ubuntu 14上使用NodeJS 4.4.7。
exports.testChainingSqlQueries = function(config, sqlToExecute, callback) {
if (config) {
oracledb.getConnection(config)
.then(function(conn){
return conn.execute(
sqlQueries.sqlQuerySetRole()
)
.then(function(result){
console.log("Execution Succes : "+ sqlQueries.sqlQuerySetRole());
return conn;
})
.catch(function(err){
console.log("Error Executing "+ sqlQueries.sqlQuerySetRole() );
return conn.close();
})
})
.then(function(conn){
return conn.execute(
sqlQueries.sqlQuerySetPackage()
)
.then(function(result){
console.log("Execution Succes : "+ sqlQueries.sqlQuerySetPackage());
return conn;
})
.catch(function(err){
console.log("Error executing : "+ sqlQueries.sqlQuerySetPackage());
return conn.close();
})
})
.then(function(conn){
return conn.execute(
sqlToExecute
)
.then(function(result){
console.log("Execution Succes : "+ sqlToExecute);
callback(result, null);
return conn.close();
})
.catch(function(err){
console.log("Error executing : "+ sqlToExecute);
return conn.close();
})
});
} else {
callback(null, {
message: "Configuration is invalid ",
config: config
});
}
};