vc操作mssql一小问题 现在连的一远程mssql,每次查询比较慢,现在想一下把所有记录查询出来用数据集保存起来,然后针对数据集再次查询筛选。现在问下那个数据集如何保存查询记录,而再次查询,多谢了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以把数据集中的数据放到内存中,自己维护一个链表List什么的,然后再在这个List中查询,进行二次筛选 可以保存到recordset么,然后再筛选 可以弄个遍历RecordSet中的每行记录,各个字段放到一个结构体中,结构体存放到Vector里面比如你的表有2个列,id和namestruct strData{ string id; string name;}vector<x> myVector;strData z;z.id=RecordSet里面取到的idz.name=RecordSet里面取到的namemyVector.add(z); - - 这样是可以,但好像不是那么回事,我那表查出来可能有几十万条记录。问下可以第一次查出RecordSet,然后再在RecordSet中查这样语法有么,多谢了。 如果直接通过SQL查询还比较慢,那么载到内存里再去过滤会更慢,并且占用更大的资源。最理想的做法还是在数据库里把查询的结果找到。(1)重新设计业务逻辑,优化查询语句(2)使用存储过程, 我晕不是有MoveNext的么,指针下移不就好了,一直都只有一个RecordSet指针啊 主要是远程的数据库服务器,高峰的时候访问比较蛮,早上很快,访问才30秒,中午可能就要10分钟了,SQL语句都是很简单的,没什么优化了,占用点资源没问题,关键我想问下有没 可以第一次查出RecordSet,然后再在RecordSet中查这样的语法? 你的意思我把几十万记录全放在vector里?然后再处理么 每次查询比较慢,现在想一下把所有记录查询出来用数据集保存起来=================================你放到视图或是表中不是一样的么如果是复杂的SQL语句,放到新表里效率可能还会提高,放到视图里一点效率改变都没有的 vs2010中怎么使用libuidk? 谁能谈谈一个完整的FTP报文从A主机传递到B主机的过程? 创建的服务无法启动是何原因?错误代码 1053 怎样做一个 p2p在公网上的服务器啊 怎样将一个 指针地址 赋给 一个 float类型的变量?? 如何将Dialog中的数据传送到文档类中(在线等待) 内存问题 讨论一下,如何用INI文件实现多语言的支持(只要给出有效建议的都给分) VC中有关日期运算的问题?紧急!!! 关于数据库的乱码问题,求教,在线等答案! 还是等差数列,就是输出要是失真,怎么BAN?? 动态拖动窗体大小
struct strData
{
string id;
string name;
}vector<x> myVector;
strData z;
z.id=RecordSet里面取到的id
z.name=RecordSet里面取到的name
myVector.add(z);
问下可以第一次查出RecordSet,然后再在RecordSet中查这样语法有么,多谢了。
最理想的做法还是在数据库里把查询的结果找到。
(1)重新设计业务逻辑,优化查询语句
(2)使用存储过程,
不是有MoveNext的么,指针下移不就好了,一直都只有一个RecordSet指针啊
然后再处理么
=================================
你放到视图或是表中不是一样的么如果是复杂的SQL语句,放到新表里效率可能还会提高,放到视图里一点效率改变都没有的