Delphi执行数据库操作时的界面控制以及进度显示,如何做得通用、友好。

flyingkiller 2003-08-22 09:36:07
相信这是大家都经常遇到的问题,不知道有什么好的解决方法没有。
显示执行进度肯定是要用线程来解决。
执行大量查询、删除、更新时Ado如何响应呢?
执行存储过程的时候呢?怎么响应?
另外这个东西最好做个通用的出来。
我是做了一个线程类,有个TNotifyEvent属性,然后把要执行的页面过程赋值给TNotifyEvent来执行,进度的显示是在页面的TNotifyEvent中自己来处理的。


...全文
83 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
firetoucher 2003-08-31
  • 打赏
  • 举报
回复
如果是sql server的话。可以通过DMO的方式做,参看一下
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=172639
dickeybird888 2003-08-29
  • 打赏
  • 举报
回复
关注
flyingkiller 2003-08-29
  • 打赏
  • 举报
回复
看来我的做法已经是很不错的啦。;)
Zengqf_W 2003-08-29
  • 打赏
  • 举报
回复
关注!
reallike 2003-08-26
  • 打赏
  • 举报
回复
进度显示?俺师傅小小是这么做的,比如建立数据库。生成一个表就显示进度条的某一点。

如果你的库里面有100个表,生成一个显示一……
michaelpeng7799 2003-08-23
  • 打赏
  • 举报
回复
存储过程也要算,真的必要做的这么细么?
不过还是来学习。
wdsimon 2003-08-22
  • 打赏
  • 举报
回复
关注
fuyifan 2003-08-22
  • 打赏
  • 举报
回复
我也有同样的问题,up
jaunmai 2003-08-22
  • 打赏
  • 举报
回复
up,關注!
tonylk 2003-08-22
  • 打赏
  • 举报
回复
SqlServer的企业管理器中执行操作也没有进度的,所以要做进度的话只能自己把一个完整的操作拆开来做。
lxpbuaa 2003-08-22
  • 打赏
  • 举报
回复
我暂时没有用进度显示,而紧紧在此过程中将鼠标状态改变了而已。呵呵,有待改进。作一个线程是对的,可以再进一步写成一个过程,直接调用她就完了。

—————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
—————————————————————————————————
myadvice 2003-08-22
  • 打赏
  • 举报
回复
如果要做成通用的话可能存储过程就有点困难了

虽然Ado为我们封装了具体数据库的细节,但是对于像存储过程这样的操作Ado也只不过

是作了一回传话筒,具体需要的时间应该于具体的数据库和过程中的操作有很大的关系

但是至于怎么从数据库中获得这个信息目前我还未试过
longtusoft 2003-08-22
  • 打赏
  • 举报
回复
作一个基于时间的就行啦没有必要那么精确,这可能会存在执行效率的负面效应.
lw549 2003-08-22
  • 打赏
  • 举报
回复
没到那个层次,顶!
yousoft2013 2003-08-22
  • 打赏
  • 举报
回复
难啊,只能确定开始,结束,中间的过程让它是假的!!
luckyboy97 2003-08-22
  • 打赏
  • 举报
回复
还记得我吗,我们经常在QQ上交流呢,我来帮你顶以下:)
kuangning 2003-08-22
  • 打赏
  • 举报
回复
这也困扰我多年了。关注吧

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧