Table.Active为True/False、Table.Open/Close对程序的速度、稳定性和资源的使用有何影响?(50分)

  • 主题发起人 主题发起人 coolqiang
  • 开始时间 开始时间
C

coolqiang

Unregistered / Unconfirmed
GUEST, unregistred user!
刚开始做数据库方面的项目,程序中用了许多Table,分别连上不同的表,是否在使用时才
将其Active:=True,用完就Active:=False?如果一直Active:=True有什么不好?Open和
Close呢?请熟悉数据库开发的DFW说说你的经验。谢谢!
 
Active和Open的功效是一样的,没有什么大区别。
但是,如果你有很多个表,每个表的数据又很多,那么在你打开时就会很慢,
如果你的大部分表都不需要编辑数据,只是用来查看的,那我建议你还是用
Query控件比较好,速度快些。
 
这个是db.pas中对数据库open和active:=true的区别;
procedure TDataSet.Open;
begin
Active := True;
end;
实际上完全一样;多看delphi的vcl的程序代码会解决你很多问题!
 
大部分表都要编辑,不是只供查看。我现在是用时才Active,用完关闭Active。
因为用MDI方式,许多时候要临时取表中的一些记录,但这些表已经Active并在子窗口中显
示出来,如果临时用完就关闭会导致子窗口中的那些表无法显示。虽然可以用程序控制一
下,但如果经常这样操作的话很麻烦。是否用Query可以方便的实现?要临时用时就通过
Query的SQL取记录,还可以从多个表中取。
一些简单的问题,请大家指教,麻烦各位了!
 
在你提到的情况下用query最好。table不能打开多次!
 
如果只供察看,可用query.
可以:要临时用时就通过Query的SQL取记录,还可以从多个表中取。
记住open后close;
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部