下記の方法で、Excelなどに貼り付けられたイメージをクリップボードにコピーし、TImageのPictureに貼り付けるところまでを作成しました。
その後このイメージをDBに登録する方法がわかりません。
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if Clipboard.HasFormat(CF_PICTURE) then
//ビットマップを Image にコピー
Image1.Picture.Assign(Clipboard);
end;
イメージファイルのディレクトリを指定してのDB登録であれば下記のようにできるかと思いますが、Pictureのイメージを直接DBに登録するにはどのようにすればよろしいのでしょうか?
function TForm1.DataUplode: boolean;
var
Stream: TBlobStream;
begin
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('UPDATE Table1 SET ');
SQL.Add(' BINARY = :BINARY ');
SQL.Add('WHERE CD = 10');
Prepare;
ParamByName('BINARY').loadFromFile('C:\ImageA.jpg', ftGraphic);
try
ExecSQL
DB.Commit;
except
on E:Exception do
end;
UnPrepare;
end;
TDBImage
フィールドをBLOB型にしましょう。
あとは、BLOB型を調べてみてください。
ツイート | ![]() |