procedure TForm1.Button2Click(Sender: TObject);
var
    str,dir:String;
    v:Variant;
    stream:TMemoryStream;
begin
    if OpenPictureDialog1.Execute then
    begin
        dir:=OpenPictureDialog1.FileName;
        str:=ExtractFileExt(dir);
        iamge1.picture.loadfromfile(dir);
    end;
    if FileExists(dir) then begin
    if str='.jpeg' then
    v:=TJpegImage.Create;
    if str='.icon' then
    v:=TIcon.Create;
    stream:=TMemoryStream.create;
    v.LoadFromFile(dir);
    v.SaveToStream(stream);
    stream.Position:=0;
    with adoquery1 do begin
      edit;
        TBlobField(fieldbyname('picture')).LoadFromStream(stream);
      post;
    end;
    stream.Free;
    v.Free;
end;
end;

解决方案 »

  1.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
        str,dir:String;
        v:Variant;
        stream:TMemoryStream;
    begin
        if OpenPictureDialog1.Execute then
        begin
            dir:=OpenPictureDialog1.FileName;
            str:=ExtractFileExt(dir);
            
        end;
        if FileExists(dir) then begin
        with adoquery1 do begin
          edit;
            TBlobField(fieldbyname('picture')).LoadFromfile(dir);
          post;
        end;
        end;
    end;
    end;
      

  2.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
        str,dir:String;
        v:Timage;
    begin
        if OpenPictureDialog1.Execute then
        begin
            dir:=OpenPictureDialog1.FileName;
            str:=ExtractFileExt(dir);
            
        end;
        if FileExists(dir) then begin
        with adoquery1 do begin
          edit;
           v.LoadFromFile(dir);
           fieldbyname('picture').assign(v);
          post;
        end;
        end;
    end;
    end;