【求助】关于ADO执行和返回记录集的处理过程的疑问

Squall001 2014-04-02 02:05:55
下面两个东西 就是我经常用的用ADO 连SQL SERVER的东西
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;

第一个嘛 就是用他只执行,不返回,第二个就是返回记录集,

我想问一下 第二个 m_pRecordset 返回记录集,要是我的记录集里面有10W条数据,它就真的返回10W条么?然后还是按照之前的 什么movefirst ,movenext去查找?还有就是它执行的速度如何? 比如说我需要0.1秒就执行一次SQL语句,返回记录集,然后在记录集当中查找,操作一下,能行么?我是用的VC

关于用ADO 用来操作的数量啊 速度啊 限制 在哪里看?VC VB C#之间的比较如何?
...全文
173 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Squall001 2014-04-02
  • 打赏
  • 举报
回复
引用 3 楼 zyq5945 的回复:
搜下就出来了,SQLServer2005可以这样分页
 
SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY keyField DESC) AS rowNum, * FROM tableName) AS t WHERE rowNum > start AND rowNum <= end
我用的SQLServer2000 我的目的是把这些条目显示在程序的列表控件里面 然后叫用户在列表控件里面操作,操作完了 我再在数据库里面删除对应的表的全部内容,然后再把列表控件里面的东西全部写进数据库里面 ,(因为先删除再重新写进去便于编程,如果要去检索那些控件表格里面的内容哪些变动了,再把变动的那些添加进数据库的话很麻烦)。 还有就是在用_ConnectionPtr m_pConnection; _RecordsetPtr m_pRecordset; 设置连接查询的时候,随便用什么设置都差不多么?这方面的资料我没有搜索到 还麻烦你讲解一下
zyq5945 2014-04-02
  • 打赏
  • 举报
回复
搜下就出来了,SQLServer2005可以这样分页
 
SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY keyField DESC) AS rowNum, * FROM tableName) AS t WHERE rowNum > start AND rowNum <= end
Squall001 2014-04-02
  • 打赏
  • 举报
回复
引用 1 楼 zyq5945 的回复:
都是按需取,或者分页方式获取,一次取10W条速度肯定慢得很,就算获取了你也不可能在界面上显示10W条数据。
不说10W条吧 我一次取1000条吧 读取1000条,或者写入1000条 然后显示在我的VC list control控件上面,我在连接或者执行的时候,需要在参数上面注意什么呢?
zyq5945 2014-04-02
  • 打赏
  • 举报
回复
都是按需取,或者分页方式获取,一次取10W条速度肯定慢得很,就算获取了你也不可能在界面上显示10W条数据。
zyq5945 2014-04-02
  • 打赏
  • 举报
回复
这里有例子,都是修改或者删除一条记录后,直接就进行数据库操作,没有像你怎么弄的。

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧