各们朋友,我今天是用一位朋友的号码登陆到这里的。我现在有一个问题:我想把“.jpg”格式的图形文件加到数据表里去,可是很多书上都只说了把'.bmp'的文件加到数据表里去,可是我的数据表需要一万多条记录,如果用'.bmp'文件会很大,所以我现在不知道怎么办。如果有知道的请在这上面留言,或者用QQ联系。
          QQ:21843105。
         谢谢!!!!!!!!!!!!!!!

解决方案 »

  1.   

    var
        PStream: TmemoryStream;
        PJpeg: TJPEGImage;
        PictureType :integer;
    begin
    PStream := TMemoryStream.Create;
    PJpeg := TJpegImage.Create;PJpeg.Assign(Image1.Picture.Graphic);
    PJpeg.SaveToStream(PStream);AuthQueryPic.LoadFromStream(PStream);
    PStream.Position := 0;
    AuthQueryPic.LoadFromStream(PStream);end;
      

  2.   

    var
      Savetable:ttable;
      aa:tmemorystream;
    begin
    aa:=tmemorystream.create;
    aa.loadfromfile('1.jpg');
    Savetable.open; 
    SaveTable.Insert;
    (SaveTable.FieldByName('JpgFile') as TBlobField).LoadFromStream(aa);
    SaveTable.post;
    end;
      

  3.   

    var
      PJpeg: TJPEGImage;
    begin
      PJpeg:=TJPEGImage.Create;
      PJpeg.loadfromfile(a.jpg);
      Savetable.open; 
      SaveTable.Insert;
      SaveTable.FieldByName('JpgFile') .assgin(Pjpeg);
      post;
    end;
      

  4.   

    存到数据库
    var
    pjpg:tjpegimage;
    pic:TMemoryStream;
    begin
    pjpg:=tjpegimage.Create;
    pjpg.LoadFromFile(F:\JPG.jpg);
    pic:=TMemoryStream.Create;
    pjpg.SaveToStream(pic);
    pic.Position:=0;
    TBlobField(dataset.FieldByName('Img')).LoadFromStream(pic);
    dataset.post;
    pic.Free;
    pjpg.free;
    end;
    从数据库取出
    var
    pjpg:tjpegimage;
    pic:TMemoryStream;
    begin
    pjpg:=tjpegimage.Create;
    pic:=TMemoryStream.Create;
    TBlobField(dataset.FieldByName('Img')).savetoStream(pic);
    pic.positon:=0;
    pjpeg.LoadFromStream(pic);
    image.graphi.bmp.assign(pjpeg);
    end;end;