我在oracle数据库上有一个“select * from tables..joins ...”查询,这将返回大约2200万行。我使用C#和ODP.NET,如下所示: oracleDataReader odr = command.ExecuteReader(); 但是在执行这个声明的过程中,需要大约1,5 Gb的RAM,这并不是很好。 关于如何保存一些内存的任何ideea? 谢谢!db阅读器的内存问题
1
A
回答
1
首先,所有尝试在查询中添加一些where子句,如果它可能最大限度地减少结果的数量。你确定你一次需要全部2200万个结果吗?
然后你可以改变select * from ....到选择columnA,columnB from ...这也会节省一些内存,因为select * ...返回所有列中的数据,你使用的所有表查询。这可能不是很有效。问候:)
0
Oracle必须支持这样的表达:从表 SELECT * WHERE ROWNUM < = 10
相关问题
- 1. 阅读CSV - 内存问题
- 2. CSV阅读器问题
- 3. Android RSS阅读器问题
- 4. Json阅读器问题
- 5. SQL Server CE阅读器的问题,它不想阅读!
- 6. Java CSV阅读器/写入器问题
- 7. Safari阅读器中的Cufon问题
- 8. QextSerialPort阅读问题
- 9. standardUserDefaults阅读问题
- 10. 阅读StandardOutput问题
- 11. FORTRAN阅读()问题
- 12. 阅读plist问题
- 13. 阅读CSV问题
- 14. 在阅读和写入内部存储时遇到问题android
- 15. 阅读视频帧时发生内存问题iPhone
- 16. Android阅读pdf元数据 - 内存问题
- 17. 阅读Json值的问题
- 18. 资源阅读的问题
- 19. 阅读STDIN的问题
- 20. epoll的阅读问题
- 21. rss阅读的问题
- 22. 阅读rdf的问题Jena
- 23. 阅读CSV的Spark问题
- 24. 屏幕阅读器占位符问题
- 25. CSV阅读器重复问题
- 26. MC75条形码阅读器问题
- 27. 数据阅读器显示问题
- 28. vb.net pdf阅读器加载问题
- 29. ZXing QR阅读器许可问题
- 30. 一些问题primefaces PDF阅读器
你真的要选择多行?如果是这样,你能不能在多个较小的选择中分割选择? – 2010-10-04 12:26:38
是的,你可能会尝试做分页查询,而不是 – Larry 2010-10-04 12:30:12
你的意思是1.5GB的数据库,或C#运行的地方?当你拿到它们时,你在做什么? – 2010-10-04 13:11:28