VC6下用ODBC连Oracle,表中大约5000条纪录,每个纪录大约200个字段(double)已经做以下测试:
m_pSet->Open();
while (!m_pSet->IsEOF()) {
m_pSet->MoveNext();
}
就执行这个循环用了大约6秒。请问这种做法是不是一次只取一条纪录?如果是,是不是频繁I/O导致这么慢?我的想法是一次把所有数据读到内存,请问各位有什么好的办法?最好有源码,谢谢。
m_pSet->Open();
while (!m_pSet->IsEOF()) {
m_pSet->MoveNext();
}
就执行这个循环用了大约6秒。请问这种做法是不是一次只取一条纪录?如果是,是不是频繁I/O导致这么慢?我的想法是一次把所有数据读到内存,请问各位有什么好的办法?最好有源码,谢谢。
会快的多
对了你用odbc去连oracle可能也很影响速度
那一次性把所有记录读到内存怎么实现呢?这个问题我现在特别想知道怎么解决。
//bow
如果用ADO的话,能提高到多少?
还有,存储过程好像不利于今后移植啊?btw,我刚才用bulk将整个表的内容的取到内存,速度没有明显优化……,郁闷ing
感谢大家的帮助