三层结构取数据

yousoft2013 2003-10-24 06:40:25
我通过applyupdate保存一条数据到表中
我用另外一个ClientDataSet从数据库取不出数据
要重新打开程序才能看到保存的数据

ClientDataSet.close 再open也不行,就是把Dcomconnection先close再打开也不行,只有关闭程序或是窗口,再打开才能看到上次保存的数据,why?
...全文
30 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yousoft2013 2003-10-25
  • 打赏
  • 举报
回复
代码是没问题的
重设ProviderName可以!

有没有别的设置方法,可以实现?
huojiehai 2003-10-24
  • 打赏
  • 举报
回复
你原来怎么样打取数的,就重执行原来的代码试试,在执行原来的代码前先ClientDataSet.close

你把你客户端的代码贴出来看看,肯定是你的客户端代码有问题。
lwsi 2003-10-24
  • 打赏
  • 举报
回复
就是先把ClientDataSet的ProviderName先设为空然后再设回去,试试看行不.
lwsi 2003-10-24
  • 打赏
  • 举报
回复
var
AProviderName: string;
begin
with ClientDataSet do
begin
AProviderName := ProviderName;
ProviderName := ''; //置空
Close;

ProviderName := AProviderName; //设回为原来的
Open;
end;
end;
wenzheng2k 2003-10-24
  • 打赏
  • 举报
回复
ClientDataSet取得数据之后,再次Close,Open,并不重新取数据。你要自己手工再调用一次Provider的取数据方法。
pingshx 2003-10-24
  • 打赏
  • 举报
回复
ClientDataSet.close之后,调用相应的应用服务器的方法应没问题的,可能有你关了之后没有调用相应的方法。
ClientDataSet.close之后,没有必要把Dcomconnection close

1,178

社区成员

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

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