table1.inserte;
tblobfields(tabel1.fieldsbuname('bmp').loadfromfile('C:\1.bmp');
table1.post

解决方案 »

  1.   

    //保存 
    procedure TForm1.ImageIntoDBBitBtnClick(Sender: TObject); 
    begin 
      try 
        with Query1 do 
          begin 
            close; 
            sql.clear; 
            sql.add('insert into img (imga) values(:imag)'); 
          end; 
        try 
          if FileName<>'' then 
            ParamByName('Img').LoadfromFile(FileName,ftGraphic) 
          else 
            ParamByName('Img') .asBlob:=''; 
          Query1.ExecSQL; 
        except 
          ShowMessage('图片保存出错!'); 
          exit; 
        end; 
      except 
      end; 
    end; 
     
    //读取 
    procedure TForm1.ImageFromDBBitBtnClick(Sender: TObject); 
    var 
      m_jpegstream:tmemorystream; 
    begin 
      with Query1 do 
      begin 
        close; 
        sql.clear; 
        sql.Add('select imga from img'); 
        try 
          Open; 
        except 
          exit; 
        end; 
      end; 
      if (Query1.FieldByName('imga') as tblobfield).asstring='' then 
      begin 
        exit; 
      end 
      else 
      begin 
        try 
        try 
          m_jpegStream:=TMemoryStream.Create; 
          (Query1.fieldbyname('imga') as TBlobField).SaveToStream(m_JpegStream); 
          m_JpegStream.Position:=0; 
          try 
            image2.Picture.Graphic:=nil; 
            image2.Picture.Graphic:=TJpegImage.Create; 
            image2.Picture.Graphic.LoadFromStream(m_JpegStream);  //读Jpeg 
          except 
            Image2.Picture.Bitmap.LoadFromStream(m_JpegStream);   //读Bmp 
          end; 
        except 
        end; 
        finally 
          m_JpegStream.Free; 
          Query1.Close; 
          Query1.UnPrepare; 
        end; 
      end; 
    end; 
     
    //BMP转换为JPG 
    procedure TStuXXSLForm.LoadImageBitBtnClick(Sender: TObject); 
    var 
      MyJpeg:TJpegImage; 
    begin 
      inherited; 
      if OpenPictureDialog1.Execute then 
      begin 
        FileName:=OpenPictureDialog1.FileName; 
        Image1.Picture.LoadFromFile(FileName); 
        if ExtractFileExt(FileName)='.Bmp' then 
        begin 
          MyJpeg:= TJpegImage.Create; 
          MyJpeg.Assign(Image1.Picture.Bitmap); 
          FileName:='Photo.Jpg'; 
          MyJpeg.SaveToFile(FileName); 
          MyJpeg.Free; 
        end; 
      end; 
    end;
      

  2.   

    用TBLOBFIELD类型变量,具体查帮助,有例子。
      

  3.   

    var  T: TBlobField;
    begin
      Query1.Close;
      T := TBlobField.Create(Self);
      T.FieldName := 'Images';
      T.Name := Query1.Name + T.FieldName;
      T.Index := Query1.FieldCount;
      T.DataSet := Query1;
      Query1.FieldDefs.UpDate;
      Query1.Open;end;