首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置或禁用与Server数据库的C++ CDatabase ODBC连接的查询超时

如何设置或禁用与Server数据库的C++ CDatabase ODBC连接的查询超时
EN

Stack Overflow用户
提问于 2020-04-29 17:41:15
回答 1查看 718关注 0票数 0

我需要一些代码运行一个查询。在MSSMS中运行查询需要1分半钟(对于超过4M行来说不太破旧)。在我打开连接的代码中

代码语言:javascript
复制
CDatabase *base = new CDatabase () ;
base->OpenEx ("Driver={SQL Server};Server=Computer\\User;Database=base;") ;

然后,我可以创建CRecordset对象并运行查询。SELECT COUNT查询工作正常(给出4m)。第一个SELECT cols查询(获取一些属性)工作正常。他们各自的CRecordset是正确关闭和清洗。第二个SELECT cols查询(返回400万行的大联接)每次尝试都会超时。

我不知道如何设置查询超时值,如何调用该参数,或者首先在何处设置该参数。我尝试了连接字符串中参数的多组合,我尝试了编辑ODBC试点池选项。我对使用另一个ODBC连接对象不感兴趣,但我可以设置一个DSN并通过它进行连接,而不是使用直接连接字符串。

最糟糕的是--我只需要分页就行了--但现在这是个麻烦,而且由于查询可以超时,所以逻辑上也应该有一种方法来设置超时,我想知道它是什么。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-30 08:11:23

查询超时不是连接字符串参数,至少对于Server不是。您可能正在寻找CDatabase::SetQueryTimeout成员函数。

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

https://stackoverflow.com/questions/61508133

复制
相关文章

相似问题

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