From 023a72cb8d2fd06100f0208ee008c9b59d90b696 Mon Sep 17 00:00:00 2001 From: yamat0jp Date: Wed, 8 Jan 2020 11:24:06 +0900 Subject: [PATCH] =?utf8?q?Post=E3=81=AF=E3=81=86=E3=81=BE=E3=81=8F?= =?utf8?q?=E7=94=9F=E3=81=8D=E3=81=BE=E3=81=97=E3=81=9F=E3=81=8C=E3=80=81?= =?utf8?q?=E3=81=BE=E3=81=A0=E4=BF=9D=E6=8C=81=E3=81=A7=E3=81=8D=E3=81=AA?= =?utf8?q?=E3=81=84=E5=95=8F=E9=A1=8C=E3=81=8C=E7=B6=9A=E3=81=84=E3=81=A6?= =?utf8?q?=E3=81=84=E3=81=BE=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- tool/Unit1.fmx | 14 ++++++++++++-- tool/Unit1.pas | 15 ++++++++++----- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/tool/Unit1.fmx b/tool/Unit1.fmx index efd43d2..a17d9a7 100644 --- a/tool/Unit1.fmx +++ b/tool/Unit1.fmx @@ -350,8 +350,8 @@ object Form2: TForm2 'Password=kainushi' 'Server=localhost' 'CharacterSet=utf8' - 'Database=kainushi' 'DriverID=MySQL') + Connected = True Left = 360 Top = 192 end @@ -384,7 +384,7 @@ object Form2: TForm2 end object FDGUIxWaitCursor1: TFDGUIxWaitCursor Provider = 'FMX' - Left = 408 + Left = 416 Top = 224 end object BindSourceDB1: TBindSourceDB @@ -393,4 +393,14 @@ object Form2: TForm2 Left = 384 Top = 288 end + object FDQuery1: TFDQuery + Connection = FDConnection1 + SQL.Strings = ( + 'create database if not exists kainushi;' + 'use kainushi;' + 'create table if not exists images(id int primary key,' + ' name varchar(10), source mediumblob);') + Left = 456 + Top = 192 + end end diff --git a/tool/Unit1.pas b/tool/Unit1.pas index a5af203..7387f4d 100644 --- a/tool/Unit1.pas +++ b/tool/Unit1.pas @@ -36,6 +36,7 @@ type FDTable1name: TWideStringField; FDTable1source: TBlobField; LinkPropertyToFieldBitmap: TLinkPropertyToField; + FDQuery1: TFDQuery; procedure Button1Click(Sender: TObject); procedure FDTable1AfterInsert(DataSet: TDataSet); procedure FormCreate(Sender: TObject); @@ -58,22 +59,27 @@ var s: TStream; bmp: TBitmapSurface; pm: TBitmapCodecSaveParams; + img: TBitmap; begin if OpenDialog1.Execute = true then begin + if FDTable1.RecordCount = 0 then + FDTable1.Append; FDTable1.Edit; bmp := TBitmapSurface.Create; + img := TBitmap.Create; try s := FDTable1.CreateBlobStream(FDTable1.FieldByName('source'), bmWrite); - Image1.Bitmap.LoadFromFile(OpenDialog1.FileName); - bmp.Assign(Image1.Bitmap); + img.LoadFromFile(OpenDialog1.FileName); + bmp.Assign(img); pm.Quality := 100; TBitmapCodecManager.SaveToStream(s, bmp, '.jpg', @pm); + FDTable1.Post; finally s.Free; bmp.Free; + img.Free; end; - FDTable1.Post; end; end; @@ -90,8 +96,7 @@ end; procedure TForm2.FormCreate(Sender: TObject); begin - if FDTable1.Exists = false then - FDTable1.CreateTable; + FDQuery1.ExecSQL; FDTable1.Open; FDTable1.Refresh; end; -- 2.11.0