长时间运行的应用程序使用 MS C OBDC API 创建和使用与 Oracle DB 的 SQL 连接。该应用程序最初设计为在启动时建立 ODBC 连接,并在应用程序运行时无限期地保持该连接,可能持续数周或数月。
我们看到连接突然断开的情况非常罕见,我想知道这是因为我们错误地使用了它们,还是认为保持这样的连接是可以的。谁能给我提供有关该主题的一些明确信息?
最佳答案
我不确定是否有关于此的明确信息,但是对于长时间运行的程序,您始终必须为此类事件做好准备,它们只是发生(不仅对于数据库连接,而且对于保持打开状态的套接字)延长的时间)。我没有使用 Oracle 的经验,但我对 Informix 有非常相似的设置,这就是我们所做的(以伪代码形式)
while (programissupposedtorun) {
opendb();
do {
youractivities();
} while(dbisok);
closedbandcleanup();
}
只要您能够正确检测到连接中断并能够在不丢失数据的情况下恢复处理,就应该没问题。
关于sql - ODBC SQL 连接应保持打开状态多长时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11501549/