首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不断重新连接到数据库会导致程序运行缓慢

不断重新连接到数据库会导致程序运行缓慢
EN

Stack Overflow用户
提问于 2013-06-29 10:06:54
回答 1查看 978关注 0票数 0

因此,我听说,当您不需要数据库连接时立即关闭数据库连接,并在需要时重新打开它,这是一种很好的编程方法。所以,每当我不需要它的时候,我就会关闭我的连接,但是我注意到它大大减慢了我的程序的速度(每个窗口需要大约2秒才能打开)。有什么办法可以解决这个问题吗?

我已经将QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");定义为全局变量,并在需要的时候执行db.open();db.close();。此外,如果我一直保持连接打开,我的窗口会立即加载。

编辑:人们说这是因为在使用程序的过程中,连接可能会丢失/断开,这可能导致未保存的数据/大问题等

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-30 00:29:28

正如其他人评论的那样,让数据库连接保持打开状态。如果您担心连接会被丢弃,那么可以在尝试执行查询之前使用QSqlDatabase::isOpen()对其进行测试。

如果您使用的是预准备查询(QSqlQuery::prepare),那么让连接保持打开更有意义。只要连接打开,准备好的查询就可以使用。

编辑

您可以更改非交互式会话的非活动超时(请参见sysvar_wait_timeout)。我不是MySQL专家,但是this might help

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17375988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档