我正在使用 ADO 连接到 SQL Server 2005。
我的 TADODataSet 选择 100 万条记录。使用 TDBGrid 并将 TADODataSet.CursorLocation 设置为 clUseServer 是可行的。但是 TDBGrid 窒息了!
如何选择 100 万条记录,避免分页,并且仍然能够在网格中显示记录,而不将所有记录提取到客户端,让网格在我上下滚动时提前读取?
SQL企业管理器可以异步执行查询并选择100万条记录,没有任何问题(也是MS-ACCESS)。
最佳答案
TGrid 不是你的问题。您的问题是 TADODataset 正在尝试加载所有记录。如果必须运行返回如此多记录的查询,则应设置 ExecuteOptions,尝试 eoAsyncExecute 和 eoAsyncFetch。设置 CacheSize 也可能有所帮助。
关于delphi - 使用 ADO 具有预读功能的 DBGrid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8547299/