见到一段代码,这样处理有必要吗?(详细见内)(50分)

  • 主题发起人 主题发起人 魏启明
  • 开始时间 开始时间

魏启明

Unregistered / Unconfirmed
GUEST, unregistred user!
If Table1.Active Then Table1.Active :=False;
Table1.Active :=True;
据称:是为了防止其他程序已经打开了该表,这样可以截断该表与其他程序的联系吗?

主要是:如果我不截断联系,那么我对该表的定位会受其他程序影响吗?
 
这样当然可以,但主要目的是为了刷新当前内存中的数据集,得到其它用户已更新的数据
 
不错的方法
 
直接table1.close;
table1.open;
 
如为其他程序则没有必要,因每一程序都应该使用单独的数据库连接,
如为确保表中数据为当前最新数据,则基本应该如此。
with Table1 do
begin
Active := False; // 如原来就False, 没有任何动作,确保Active = False
Active := True;
end;

or:

with Table1 do
begin
Close;
Open;
end;
 
回答正确加1分[:D]
 
这样做到的目的是刷新结果集, 应该这样的.......
 
我覺得沒有必要,
如果說是更新數據使用Refresh就可以了,
何必這麼麻煩
 
俺认为是程序风格问题,这样写条理清楚
 
其实就是归总为真,不论什么情况都截断。
 
多人接受答案了。
 
后退
顶部