我的应用程序使用一个TClientDataSet和一个TDataSource集合。不DataBase涉及。将TClientDataSet被保存在XML格式。我TClientDataSet使用DataSet.SaveToFile方法保存,并且这样做,保存的文件保留了增量更改。我不能使用该DataSet.UpplyUpdates方法,因为如前所述,没有DataBase 因此也没有Provider。
DataSet.SaveToFile ('SavedFile.XML') // this retains Delta changes
DataSet.ApplyUpdates (0) // can't use it (no Provider)
我的问题是:在将 Delta 更改TClientDataSet保存到文件之前,如何强制对其应用 Delta 更改?如果保存为某种binary格式,是否会应用 Delta 更改?。注意:关闭并随后打开TClientDataSet也不起作用。
要删除保存的更改,只需调用TCustomClientDataSet.MergeChangeLog。
如果您根本不需要更改日志,请在打开数据集后立即设置TCustomClientDataSet.LogChanges为False(True是默认值)。