如果是其他的也可以,.jpg先在uses后加上 jpeg在from放一个dbimage. procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
     begin
          with ADOTable1 do
            begin
              Append;
              (OpenPictureDialog1.FileName);              Post;
            end;
      end;
end;

解决方案 »

  1.   

    解决不能插入jpeg图片的问题:
    use jpeg;
    procedure TForm1.DBImage1DblClick(Sender: TObject);
    var filepath,extname:string  ;
        jpeg:Tjpegimage;begin
        query1.RequestLive:=true;
        if openpicturedialog1.Execute then
        begin
             filepath:=openpicturedialog1.FileName;
             if filepath<>'' then
           extname:=extractfileext(filepath);
             if (uppercase(extname)='.JPEG') or (uppercase(extname)='.JPG')  then
             begin
             query1.Edit;
             jpeg:=Tjpegimage.Create;
             jpeg.LoadFromFile(filepath);
             dbimage1.Picture.Graphic.Assign(jpeg);
             end
             else
             begin
             query1.edit;
             query1graphic.LoadFromFile(filepath);
             end;
             query1.Post;
             end;
    end;
      

  2.   

    //***************图象格式转换******************
     // strExtName取得的图片后缀名。
     var
      Jpg:TJpegImage;
      strExtName:string;
      AFormat:Word;
      AData,APalette:THandle; 
    Begin  if strExtName<>'BMP' then
        begin
          Jpg:=TJpegImage.Create;
          try
            Jpg.LoadFromFile(OpnPicDlgWDLX.FileName);    
            Jpg.SaveToClipboardFormat(AFormat,AData,APalette);
            imgTBD.Picture.LoadFromClipboardFormat(AFormat,AData,APalette);
            application.ProcessMessages;
          finally
            Jpg.Free;
          end;
        end
      

  3.   

    你的数据类型是不是错了啊!
    我试过是可以!
    (Adoquery1.FieldByName('图片') as TBlobField).assign(image1.picture.Bitmap)