Delphi中TDataset.close()的确切效果是什么?

时间:2014-08-08 00:34:43

标签: sql delphi

为什么建议以下列方式在Delphi中处理sql-query?:

dataset.close();     //  ?????
dataset.sql.clear(); // old sql-query gets deleted

dataset.sql.add('your sql-query'); // here a query-String is added to your sql-object

dataset.open();  // here your sql-query starts to work

是否可以关闭sql-Object每次都会定义一个默认状态,通过该状态删除前一个sql-query产生的前一个数据集?

1 个答案:

答案 0 :(得分:2)

当您打开数据集时,它会启用活动连接,假设您的数据库/驱动程序支持此操作。有些数据库连接是保持活动状态,有些则不是。对于那些,Open过程启用与数据库的开放连接,在这种情况下,您可以使用数据集动态编辑该数据。因此,当您Close数据集时,这通常会关闭打开的内容。请注意,TDataset会继承到其他更具体的类型,其中许多都需要Open / Close个过程。

关闭数据集也会使其中包含的数据无效,因此也不再提供该数据。您的查询将保留在那里,但数据将不再可用于读/写。