数据库的后台查询

tlc97 2001-07-13 02:09:29
加精
以前做的数据库程序,近来把好多费是的查询改为在后台运行
性能提高不少,用户也非常高兴,再不用有数据查询是痛苦的等
待,不过第一次做多线程,还是有不少问题,有经验的高手请讲
讲要主意的问题
分看人加罗,还有很多呢
...全文
380 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
tlc97 2001-07-22
  • 打赏
  • 举报
回复
例子没发现,还有谁愿意多透露几招吗?
HEROIN 2001-07-18
  • 打赏
  • 举报
回复
BCB带有例子
jh21cn 2001-07-17
  • 打赏
  • 举报
回复
关注
zhangming 2001-07-17
  • 打赏
  • 举报
回复
用线程做查询是不错,最好用TEVEN 毕竟API的线程信号管理会比较好。
火鸟33 2001-07-17
  • 打赏
  • 举报
回复
我正想把我的图片midas服务器改为free模式,怎么搞?
tlc97 2001-07-16
  • 打赏
  • 举报
回复
1一个查询一个信息窗口,多个查询的时候应该有多个wait,也的确有了
问题是,他们都不动了(作用是对查询计)
2。Synchronize(waitshow)很快执行完,从主线程中退回到自己的现程,
最耗时的是table->Active=true,但此时它在自己的线程,其它线程、主线
程很容易调用函数结束它,你担心的问题不会出现,当然
如改为:Synchronize(table->Active=true),那就没法操作查询线程了
你可以试试,无论多少记录,随时可以终止


luhongjun 2001-07-16
  • 打赏
  • 举报
回复
没有看明白你的意思,你怎样把多个wait显示成一个Wait?
还是用一个wait 吧。
luhongjun 2001-07-16
  • 打赏
  • 举报
回复
tlc97(文风):给你挑一个毛病,在程序中你使用了“Synchronize”他的作用是使线程与VCL同步。使VCL的线程变得安全。

但:Synchronize是将所执行线程的过程递交给主线程完成,但是一旦使用Synchronize,就没有办法在主线程中终止程序了,如果你一个大库的查询(100万条)左右,怎样能用多线程作退出查询?
tlc97 2001-07-16
  • 打赏
  • 举报
回复
我现在发现这样一个问题,我在线成创建时传递的TForm * wait
是:
void __fastcall MyQuery(TQuery * Query1,TDataSourse * DataSource1)
{
TFormWait * wait1=new TFornWait(FormMain);
Query1->Close;
Query1->Clear();
Query1->SQL->Add("select * from UserOrder order by OrderId");
opendata * querythread=new opendata(true,Query1,DataSource1,wait1);
}
如果以上函数连续对不同的DataSet控件执行查询,wait窗口上的进度条就不会反应
但查询还是能成功
我每次查询都新建一个wait来显示进度,不可能多个线程访问同一wait,但出现的效
果就象是多个线程同时访问一个Form的样子
各位看看有什么问题?

wyb_star 2001-07-16
  • 打赏
  • 举报
回复
没用过,我也来学习学习。
hyhong_h 2001-07-16
  • 打赏
  • 举报
回复
存储过程效率高,但不容易中止。

要提高效率还可以从驱动程序上想想办法。
luhongjun 2001-07-16
  • 打赏
  • 举报
回复
我想给你挑挑毛病,现在没找到.
等等我
lg75 2001-07-16
  • 打赏
  • 举报
回复
string256(字符)
你搞错了吧,我发现TThread不但在2000下奔驰如飞,还不容易死机,比98强多了。
这是调试程序25天发现的。

解决方法是:线程里使用存储过程!
 
tlc97 2001-07-16
  • 打赏
  • 举报
回复
若果是本地,数据查询很快,根本不用这样,用在C/S中有什么问题吗?
huanGe 2001-07-16
  • 打赏
  • 举报
回复
其实你多加很多这样的查询,如果是本地数据库,那后台进程查是可行的,对于C/S模式最好不这么用
HUANG_JH 2001-07-16
  • 打赏
  • 举报
回复
学习学习
tlc97 2001-07-15
  • 打赏
  • 举报
回复
随便写写吗,提供点个人的思路,主要是想听听各位的意见
另:很奇怪的是,我们另一个多线程的控制程序正是在32位
的win2000下运行,没发现什么问题,楼上的楼上,你能具体
说说吗?
Againstwind 2001-07-15
  • 打赏
  • 举报
回复
老大!能把程序写的更清爽一些吗?如果能加一些注释就更好了!!!
程序员应注意良好的编程风格。个人意见仅供参考!
关注中!!!
whitelion 2001-07-14
  • 打赏
  • 举报
回复
学习
string256 2001-07-13
  • 打赏
  • 举报
回复
TThread在win2000下运行有bug
说不是win32程序之类的话
我一本书带的CD上的程序
用的TThread,结果运行就出现这样的问题
加载更多回复(9)

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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