当前位置:  开发笔记 > 编程语言 > 正文

Delphi中的BDE与ADO

如何解决《Delphi中的BDE与ADO》经验,为你挑选了1个好方法。



1> zendar..:

我不知道Delphi 2007,但我对Delphi 7和Oracle 8做了同样的事情.

这是我做的事情:

根据查询设置TAdoDataSet.CursorLocation:

clUseClient如果查询获取GUI的记录并且查询相对"简单" - 没有分组或总和

clUseServer如果查询有某种聚合(求和,分组,计数)

根据查询设置TAdoDataSet.CursorType:

ctForwardOnly用于不需要向后滚动数据集的报表 - 仅适用于 clUseServer

用于GUI的 ctStatic.这只是与 clUseClient一起使用的模式

根据查询设置TAdoDataSet.LockType:

ltReadOnly用于未用于编辑的每个数据集(网格,报告)

当记录在更改后立即发布到数据库时(例如用户在表单上编辑数据),显示优先级

更改大量记录时的 ltBatchOptimistic.这适用于您获取记录数,然后对它们进行一些处理然后批量发送更新到数据库的情况.这最好与clUseClient和ctStatic结合使用.

根据我的经验,Oracle的Microsoft OLEDB提供商比Oracle OleDb提供商工作得更好.你应该测试一下.
编辑:检查Fabricio关于可能的blob问题的评论.

更换TAdoQUeryTAdoDataSet.TAdoQuery是为将应用程序从BDE转换为ADO而创建的,但Borland/Codegear推荐是使用TAdoDataSet

重新检查Oracle连接字符串以确保您没有网络延迟.连接到Oracle需要多长时间?TnsPing有多长时间?

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有