FireDAC.Comp.DataSet.TFDDataSet.LoadFromStream
Delphi
procedure LoadFromStream(AStream: TStream; AFormat: TFDStorageFormat = sfAuto);
C++
void __fastcall LoadFromStream(System::Classes::TStream* AStream, Firedac::Stan::Intf::TFDStorageFormat AFormat = (Firedac::Stan::Intf::TFDStorageFormat)(0x0));
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
procedure function |
public | FireDAC.Comp.DataSet.pas FireDAC.Comp.DataSet.hpp |
FireDAC.Comp.DataSet | TFDDataSet |
Description
Charge les données d'un ensemble de données à partir d'un flux.
Utilisez LoadFromStream pour remplir l'ensemble de données avec les données stockées dans un fichier externe. Les données ne sont pas déplacées dans une base de données, mais simplement chargées dans un stockage en mémoire d'ensemble de données.
AStream
est la référence au flux contenant les données à charger. Le flux doit être placé au début des données de l'ensemble de données, sinon le chargement échoue.
AFormat
est le format du fichier :
sfXML
-- un flux contient des données XML autonomes correctement formées.sfBinary
-- un flux contient des données binaires ayant le format FireDAC personnalisé.sfAuto
-- un format est déterminé par l'extension ResourceOptions.sfJSON
-- un flux contient des données JSON autonomes.
DefaultStoreExt s'il est spécifié, sinon par ResourceOptions.DefaultStoreFormat.
LoadFromStream tente de charger à partir du flux les éléments spécifiés par ResourceOptions.StoreItems. Si le flux a été écrit avec une valeur StoreItems différente, une exception similaire à celle qui suit est déclenchée :
[FireDAC][Stan]-712 Cannot read [Relationlist] object
Exemple
var
oStr: TStream;
....
oStr := FDQuery1.CreateBlobStream(FDQuery1.FieldByName('data'), bmRead);
try
FDMemTable1.LoadFromStream(oStr, sfBinary);
finally
oStr.Free;
end;