ADO读写数据库时好时坏,怀疑是ADOConnection经常掉线

fangrk 2005-10-24 07:42:53
ADO控件为ADOQuery和ADOConnection。
拖了这两个控件后就简单的把ADOQuery1的Connection选择ADOConnection1,其他都是默认值。
对数据库的读写分为手动触发和自动触发,两者最终都是调用相同的一个函数Trigger。自动触发采用Timer控件,一天触发一次。
在FormShow中设定ConnectionString:
ADOConnection1->Close();
ADOConnection1->ConnectionString="......";//填写实际内容,数据库为SQLServer2000

除了在FormShow中写了ADOConnection的相关代码,其他地方都没有。

Trigger函数对ADOQuery1进行操作。
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(...);//实际内容
ADOQuery1->Open()或ExecSQL();

现在的问题是:执行了Trigger,但是Trigger函数中对数据库的操作不稳定,有时候正确的,有时候却没有对数据库进行操作,似乎所有的ADOQuery1->Open();和ADOQuery1->ExecSQL();都没有起到作用。比如启动程序后手动触发20天数据的操作,这20天都成功的,然后过若干小时后采用自动触发却没有对数据进行更新(Trigger还是调用的)

想问一下是否需要ADOConnection1->Open();来启动连接?我以前写的一些程序中没有这条语句,但是也可以。现在没有写,有时候也是可以的。添加了ADOConnection1->Open();后运行出错。或者告诉我如何消除这个臭虫。

谢谢!
...全文
145 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fangrk 2005-10-25
  • 打赏
  • 举报
回复
的确是自己的处理流程有点问题
xibingwuqing 2005-10-25
  • 打赏
  • 举报
回复
同意楼上的,有时正确有时不正确多半是自己的原因,随便做一个简单的小程序试试
97jy059 2005-10-25
  • 打赏
  • 举报
回复
会不会是处理流程有问题?
fangrk 2005-10-24
  • 打赏
  • 举报
回复
BCB6,已经安装了sp4
7rainbow 2005-10-24
  • 打赏
  • 举报
回复
如果是BCB5,要打ADO补丁的。

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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