6 System.SysUtils, System.Types, System.UITypes, System.Classes,
8 FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.Ani, FMX.Layouts,
9 FMX.Gestures, FMX.Graphics, FMX.Surfaces,
10 FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Param,
11 FireDAC.Stan.Error, FireDAC.DatS, FireDAC.Phys.Intf, FireDAC.DApt.Intf,
12 FireDAC.Stan.Async, FireDAC.DApt, FireDAC.UI.Intf, FireDAC.Stan.Def,
13 FireDAC.Stan.Pool, FireDAC.Phys, FireDAC.Phys.MySQL, FireDAC.Phys.MySQLDef,
14 Data.Bind.Controls, Data.Bind.EngExt, FMX.Bind.DBEngExt, System.Rtti,
15 System.Bindings.Outputs, FMX.Bind.Editors, Data.Bind.Components, Data.DB,
16 FMX.Controls.Presentation, FMX.Edit, FMX.Bind.Navigator, Data.Bind.DBScope,
17 FireDAC.Comp.Client, FireDAC.Comp.DataSet, FMX.Objects, FMX.StdCtrls,
18 FireDAC.FMXUI.Wait, FireDAC.Comp.UI, FireDAC.Comp.BatchMove;
24 FDConnection1: TFDConnection;
26 BindingsList1: TBindingsList;
27 FDGUIxWaitCursor1: TFDGUIxWaitCursor;
28 BindSourceDB1: TBindSourceDB;
29 NavigatorBindSourceDB12: TBindNavigator;
30 LinkControlToField1: TLinkControlToField;
32 OpenDialog1: TOpenDialog;
34 LinkPropertyToFieldText: TLinkPropertyToField;
35 LinkPropertyToFieldBitmap: TLinkPropertyToField;
38 FDBatchMove1: TFDBatchMove;
40 procedure Button1Click(Sender: TObject);
41 procedure FormCreate(Sender: TObject);
42 procedure Button2Click(Sender: TObject);
43 procedure Button3Click(Sender: TObject);
46 procedure streamToField(stream, field: TStream);
58 procedure TForm2.Button1Click(Sender: TObject);
63 if OpenDialog1.Execute = true then
66 s := FDTable1.CreateBlobStream(FDTable1.FieldByName('source'), bmWrite);
67 t := TMemoryStream.Create;
69 t.LoadFromFile(OpenDialog1.FileName);
79 procedure TForm2.Button2Click(Sender: TObject);
84 Add('drop table images;');
85 Add('create table images(id int primary key, name varchar(10), source mediumblob);');
90 procedure TForm2.FormCreate(Sender: TObject);
97 if FDTable1.RecordCount = 0 then
100 FDTable1.AppendRecord([i, Format('slide%d.jpg', [i]), nil]);
105 s := FDTable1.CreateBlobStream(FDTable1.FieldByName('source'), bmWrite);
106 t := TResourceStream.Create(HInstance, Format('Resource_%d', [i]),
120 procedure TForm2.streamToField(stream, field: TStream);
123 pm: TBitmapCodecSaveParams;
127 bmp := TBitmapSurface.Create;
130 img.LoadFromStream(stream);
132 TBitmapCodecManager.SaveToStream(field, bmp, '.jpg', @pm);
139 procedure TForm2.Button3Click(Sender: TObject);
142 FDTable1.FieldByName('source').Assign(nil);