> 使用 batch updates 時,如何得知尚未更新的記錄有幾筆? 將 Filterd 設為 True,並且將 FilterGroup 設為 fgPendingRecords。 如果你希望不要動到目前的 cursor,可以用 Clone 的方式,例如: function AdoGetPendingCount(ADataSet: TCustomADODataSet): Integer; var adods: TADODataSet; begin Result := 0; if ADataSet.LockType <> ltBatchOptimistic then Exit; adods := TADODataSet.Create(nil); try adods.Clone(ADataSet); adods.Filtered := True; adods.FilterGroup := fgPendingRecords; Result := adods.RecordCount; finally adods.Free; end; end;