你图片文件的扩展名是 .jpg 么?

解决方案 »

  1.   

    procedure TForm7.Button1Click(Sender: TObject);      //保存.bmp格式的文件到更新包里。
    var str:Tmemorystream;
    begin
    str:=Tmemorystream.Create;
    str.LoadFromFile('d:\cai.jpg');//OpenDialog1.FileName 也可以
    str.Position:=0;    adoquery2.Append;                               //图片
        Tblobfield(adoquery2.FieldByName('image')).loadfromstream(str);
        try
        adoquery2.Post;
        finally
        str.Free;
        end;
    end;procedure TForm5.Button1Click(Sender: TObject);
    var str:Tmemorystream;                   //修改图片POS_mgxid
    begin
    IF not ADOQUERY2.IsEmpty Then               //如果更新编号不为空
      Begin
      str:=Tmemorystream.Create;                        //读取远程更新包的数据到程序执行的目录下面
      str.Position:=0;
      Tblobfield(adoquery2.FieldByName('image')).savetostream(str);
      str.SaveToFile(ExtractFilePath(Application.ExeName)+'image\cai.jpg');
      str.Free;
      end;
      

  2.   

    表中的字段类型:binary,长度:2000
      

  3.   

    忘了告诉大家
    我没加 
    uses jep的什么东东
      

  4.   

    以下代码应该写在什么事件中
    var  FStream: TStream;
        FJpeg: TJPEGImage;
    begin
    FJpeg:=TJPEGImage.Create;
    FStream:=TBlobStream.Create(TBlobField(lfcolor.FieldByName('图片')),bmRead);
    try
    FJpeg.LoadFromStream(FStream);
    image2.Picture.Assign(FJpeg);
    finally
    FStream.Free ;
    FJpeg.free;
    end;