gpt4 book ai didi

node.js - 如何避免与 ORACLEDB 的连接中断? Nodejs

转载 作者:太空宇宙 更新时间:2023-11-03 22:20:59 25 4
gpt4 key购买 nike

我有这个数据库连接。注释所在的函数内部,有一个rest api的数据更新周期。数据更新了,但是当更新Oracle数据库中的数据时,连接可能会失败,之后所有更新的数据都会变得undefined。如何正确连接数据库以免出现故障?

oracledb.getConnection(
{
user: db.user,
password: db.password,
connectString: db.connectString
},
connExecute
);

function connExecute(err, connection) {
if (err) {
console.error(err.message);
return;
}
sql = `SELECT * FROM db.test`;
connection.execute(sql, {}, { outFormat: oracledb.OBJECT },
function (err, db) {
if (err) {
console.error(err.message);
connRelease(connection);
return;
}
// data update loop

connRelease(connection);
});
}

function connRelease(connection) {
connection.close(
function (err) {
if (err) {
console.error(err.message);
}
});
}

最佳答案

您应该使用连接池。连接池有built-in logic检测有问题的连接并透明地创建新连接。有关更多详细信息,请参阅有关创建 REST API 的本系列:https://jsao.io/2018/03/creating-a-rest-api-with-node-js-and-oracle-database/

请记住,问题仍然可能发生,因此您必须根据应用程序的需要处理错误。

关于node.js - 如何避免与 ORACLEDB 的连接中断? Nodejs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55220123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com