如何用ado query 存入圖片? |
尚未結案
|
wildchoi
一般會員 發表:8 回覆:15 積分:9 註冊:2003-05-20 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
|
wildchoi
一般會員 發表:8 回覆:15 積分:9 註冊:2003-05-20 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
ADO 不是不支援 blob field , 只是存取比較和其他方法不同及多點問題 你可在 google 輸入
Delphi Ado TBlobField
找尋可找到一些資料
如
http://groups.google.com/groups?hl=zh-TW&lr=lang_zh-CN|lang_zh-TW|lang_en&ie=UTF-8&oe=UTF-8&threadm=3c924915_1@dnews 另外你也應在 ADOQuery 的 FieldEditor (雙擊該元件) 裡加入該 Field 看 Delphi 將他定為甚麼 Field,這樣會比較好處理。
|
邊城浪子
一般會員 發表:2 回覆:2 積分:0 註冊:2003-06-18 發送簡訊給我 |
提供一斷程式碼供大家參考:
THuman=class (TComponent)
Private
Name:string;
IDCard:string;
Sex:Byte;
Photo:TImage;
FQuery:TQuery;
FDatabase:TDatabase;
- - -
publisned
property Name:string read FName write FName;
property IDCard:string read FIDCard write FIDCard;
property Sex:Byte read FSex write FSex;
property Photo:TImage read FPhoto write FPhoto;
property Query:TQuery read FQuery write FQuery;
property Database:TDatabase read FDatabase write FDatabase;
function THuman.Insert: Boolean;
var Sqlstr:string;
lStream:TMemoryStream;
lPicture:TJPEGImage;
begin
lStream:=TMemoryStream.Create;
lPicture:=TJPEGImage.Create;// FPhoto为TImage变量,在主界面可以选择一张照片
if FPhoto.Picture.Graphic<>nil then
begin
lPicture.Assign(FPhoto.Picture.Graphic);
lPicture.SaveToStream(lStream);
end;
if FDatabase.InTransaction then
FDatabase.Commit;
FDatabase.StartTransaction;
Query.Sql.text:= 'Insert Into Human(Name,IDCard,Sex,Photo) values(:Name,:IDCard,:Sex,:Photo)’;
Query.ParamByName('Name').asstring:=’邊城浪子’;
Query.ParamByName('IDCard').asstring:=Something;
Query.ParamByName('Sex').asstring:=Something;
Query.ParamByName('Photo').LoadFromStream(lStream,ftBlob);
try
Query.Prepare;
Query.execSQL;
Query.Close;
FreeAndNil(lStream);
FreeAndNil(lPicture);
Result:=True;
FDatabase.Commit;
except
FDatabase.Rollback;
Query.Close;
FreeAndNil(lStream);
FreeAndNil(lPicture);
Result:=False;
end;
最後主要釋放動態生成的LStream 和 LPicture 發表人 - 邊城浪子 於 2003/06/18 16:14:29
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |