Re: Like TClientDataSet.Delta,ADO can only save modified data into stream or file?



I use batchupdate mode.I want to get only modified/deleted/appended records
like TClientDataSet.Delta to reduce the size of stream.

I want this because of:
Save ADO data to stream at middleware,then send to client.After client
modified/deleted/appended,it alse save to stream and send back to
middleware.This speed is more faster than TDataSetProvider.Data when use
ADO(BDE more faster).

"Brian Bushay TeamB" <BBushay@xxxxxxxxx> ????
news:of0ld2p7llrpl88kup8vgnqpvnkfutm1o0@xxxxxxxxxx

We known,if set TADODataSet.MarshalOptions as 'moMarshalModifiedOnly',ADO
only send modified data back to DBMS.
But,if savetofile or savetostream can also only save modified data?
All data is saved to the stream. The information on which records are
modified
is saved so it you reload the data the TadoDataset still tracks the
modified
records.



function TDMADOStream.ReadData(ADataSet: TDataSet): OLEVariant;
var
ADOStream:_Stream;
begin
ADOStream:=CoStream.Create;
try

OLEVariant(TADODataSet(ADataSet).Recordset).Save(ADOStream,adPersistADTG);
ADOStream.Position:=0;
Result:=ADOStream.Read(ADOStream.Size);
finally
ADOStream:=nil;
end;
end;


--
Brian Bushay (TeamB)
Bbushay@xxxxxxxxx


.



Relevant Pages