if FileExists('c:\jpg1.jpg') then begin Stream1 := TFileStream.Create('c\jpg1.jpg', fmOpenRead); Adc_image.CommandText := 'INSERT INTO [image1] values(:file_no, :image1)'; Adc_image.Parameters.ParamValues['file_no']:='2'; Adc_image.Parameters.Items[1].LoadFromStream(Stream1,ftBlob); Adc_image.Prepared ; Adc_image.Execute; Stream1.Destroy ; end
樓上的。能解說一下該段代碼的大意嗎﹖我有點不明白﹔ 為了不讓大家誤解題意﹐特強調說明﹕我在界面上放有一個image控件﹐通過opnepicturedialog將圖片導入到image控件中﹐現在就是要把image中的圖片保存到我的后台數據庫中(其實就是delphi自帶的*.db數據庫)該圖片數據存放到數據庫中的photo 字段中。現在我有遇到另一個麻煩﹐就是我一保存*.jpg格式的圖片就報錯﹐現在可以保存bmp 格式的圖片﹔我的存取代碼如下﹕with PicTab do begin append; FieldByName('name').asstring:=edit1.Text; FieldByName('address').asstring:=Memo1.Lines.Text; FieldByName('Photo').Assign(image1.picture);//其實我就用這一句就實現保存了。 Try post; showmessage('數據已經成功提交﹗'); 為什么不保存jpg格式的文件呢﹖﹖﹖﹖﹖
begin Query1.close; Query1.sql.Text := 'insert into TT values(''01'', :image)'; Query1.Params.Items[0].LoadFromFile('C:\aaa.jpg',ftBlob); Query1.ExecSQL; end
to: PrgmLover(爱国者) 我就沒看明白﹔ begin Query1.close; Query1.sql.Text := 'insert into TT values(''01'', :image)';//插入數據﹖怎么看見參數而不見賦值呢﹖ Query1.Params.Items[0].LoadFromFile('C:\aaa.jpg',ftBlob);//我的界面上image的值怎么賦給它呢﹐也是通過這里加載嗎》﹖ Query1.ExecSQL; end
to: PrgmLover(爱国者) 不好意思﹐第一問﹐問錯了。第二問沒錯!
if OpenDialog1.Execute then begin AStress := OpenDialog1.FileName; Query1.close; Query1.sql.Text := 'insert into TT values(''01'', :image)'; Query1.Parameters.ParamByName('image').Value:= LoadFromFile(AStress,ftBlob); Query1.ExecSQL; end;
干脆把代碼貼出來﹐看情況治病吧﹕ with PicTab do begin append; FieldByName('name').asstring:=edit1.Text; FieldByName('address').asstring:=Memo1.Lines.Text; FieldByName('Photo').assign(image1.picture);//添加圖片 Try post; showmessage('數據已經成功提交﹗'); 我這段代碼為何不能添加jpg格式的圖片呢﹖一添加就報錯﹗
begin
Stream1 := TFileStream.Create('c\jpg1.jpg', fmOpenRead);
Adc_image.CommandText := 'INSERT INTO [image1] values(:file_no, :image1)';
Adc_image.Parameters.ParamValues['file_no']:='2';
Adc_image.Parameters.Items[1].LoadFromStream(Stream1,ftBlob);
Adc_image.Prepared ;
Adc_image.Execute;
Stream1.Destroy ;
end
為了不讓大家誤解題意﹐特強調說明﹕我在界面上放有一個image控件﹐通過opnepicturedialog將圖片導入到image控件中﹐現在就是要把image中的圖片保存到我的后台數據庫中(其實就是delphi自帶的*.db數據庫)該圖片數據存放到數據庫中的photo 字段中。現在我有遇到另一個麻煩﹐就是我一保存*.jpg格式的圖片就報錯﹐現在可以保存bmp 格式的圖片﹔我的存取代碼如下﹕with PicTab do
begin
append;
FieldByName('name').asstring:=edit1.Text;
FieldByName('address').asstring:=Memo1.Lines.Text;
FieldByName('Photo').Assign(image1.picture);//其實我就用這一句就實現保存了。
Try
post;
showmessage('數據已經成功提交﹗');
為什么不保存jpg格式的文件呢﹖﹖﹖﹖﹖
Query1.close;
Query1.sql.Text := 'insert into TT values(''01'', :image)';
Query1.Params.Items[0].LoadFromFile('C:\aaa.jpg',ftBlob);
Query1.ExecSQL;
end
我就沒看明白﹔
begin
Query1.close;
Query1.sql.Text := 'insert into TT values(''01'', :image)';//插入數據﹖怎么看見參數而不見賦值呢﹖
Query1.Params.Items[0].LoadFromFile('C:\aaa.jpg',ftBlob);//我的界面上image的值怎么賦給它呢﹐也是通過這里加載嗎》﹖
Query1.ExecSQL;
end
不好意思﹐第一問﹐問錯了。第二問沒錯!
if OpenDialog1.Execute then
begin
AStress := OpenDialog1.FileName;
Query1.close;
Query1.sql.Text := 'insert into TT values(''01'', :image)';
Query1.Parameters.ParamByName('image').Value:=
LoadFromFile(AStress,ftBlob);
Query1.ExecSQL;
end;
http://expert.csdn.net/Expert/topic/2274/2274235.xml?temp=.4971125
with PicTab do
begin
append;
FieldByName('name').asstring:=edit1.Text;
FieldByName('address').asstring:=Memo1.Lines.Text;
FieldByName('Photo').assign(image1.picture);//添加圖片
Try
post;
showmessage('數據已經成功提交﹗');
我這段代碼為何不能添加jpg格式的圖片呢﹖一添加就報錯﹗
bitmap image is not valid;
在dbimage中顯示數據庫中的jpg圖片。該如何....?
注意﹕是把數據庫中的jpg圖片顯示到dbimage 中....
然后,将对象A赋给相应的字段,tblobfied(相应的字段对象):=对象A
释放对象A,就可以,试试吧!
然后,将对象A赋给相应的字段,tblobfield相应的字段对象):=对象A
释放对象A,就可以,试试吧!
是jpeg试试:A:tjpegimage;
A:=tjpegimage.create();
a.loadfromfile(文件路径);
tblobfield(table1.fields[1]):=a;
a.free;
a:=tjpegimage.Create ;
a:=tblobfield(table1.fields[index]);
image1.Picture:=tpicture(a);
a.Free ;