ADO GetRows比GetFields和MoveNext慢

时间:2012-02-17 16:08:39

标签: c++ ado

我有一个函数,它创建一个带有WHERE子句的SELECT语句。然后多次调用此函数(WHERE子句每次都不同)。我有这个功能的两个版本。一个打开记录集,然后用MoveNext迭代每一行,并从每一行填充一些变量。另一个版本打开记录集,然后调用GetRows来填充数组。使用第一个版本,我的应用程序需要9秒,但使用GetRows版本需要79秒。我读过GetRows更有效率。情况不是这样吗?

1 个答案:

答案 0 :(得分:1)

它更有效率,只要你没有内存不足(即如果你的可用内存已经很少而我们正在谈论一个大桌子,那么将它们放入内存可能会使你的应用程序开始分页到磁盘,而另一种方法没有,因为它一次只有几个。)

为什么不发布有问题的代码,看是否有其他因素导致问题?