adoquery1.Append;
tblobfield(adoquery1.FieldByName('files')).LoadFromStream(s);
adoquery1.FieldByName('name').Text:='我的文件';
adoquery1.Post;s是内存流类型提交后总是提示数据类型不对。请问一下,我的字段‘files’应该用什么类型的数据啊??急~~~~~~~~~~~~~
tblobfield(adoquery1.FieldByName('files')).LoadFromStream(s);
adoquery1.FieldByName('name').Text:='我的文件';
adoquery1.Post;s是内存流类型提交后总是提示数据类型不对。请问一下,我的字段‘files’应该用什么类型的数据啊??急~~~~~~~~~~~~~
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('insert into Pic values(.....,:Pic,...)');
.................
ADOQuery1.Parameters.ParamByName('Pic').Assign(Image1.Picture.Bitmap);
.................
ADOQuery1.ExecSQL;
讀取
Image1.Picture.Bitmap.Assign(TBLOBField(ADOQuery1.Parameters.ParamByName('Pic')))
在使用ADO组件时,使用TADOBlobStream流可以进得读写:
写入数据库
var
BS:TADOBlobStream;
begin
ADOQuery1.append;
BS:=TADOBlobStream.create('blob字段名',bmWrite);
BS.loadFromFile('文件名');
TBlobField(ADOQuery1.FieldByName('blob字段名')).LoadFromStream(BS);
ADOQuery1.post;
end;
stream:tmemorystream;
begin
stream:=tmemorystream.Create;
stream.LoadFromFile(opendialog1.FileName);qinsert.Close;
qinsert.SQL.text:='insert into films f_file)values(:f_image)';
qinsert.Parameters.ParamByName('f_image').LoadFromStream(Stream,ftBlob)
qinsert.execsql;