用数据字段用 image 也可以,
直接用数据感知控间DBimage进行数据存储

解决方案 »

  1.   

    哥们,说说具体咋做吧,代码,
    thanks advanced
      

  2.   

    使用流。
    TMemStream TempStream;
    TempStream := TMemStream.Create;
    {Here put picture data int TempStream }
    TBlobField(X).LoadFromStream(TempStream);
    TempStream.Free;
      

  3.   

    没别的办法吗,数据库字段类型用binary,OK吗!!!!!
      

  4.   

    使用TBlobField(table.FieldByName('图像字段')).SaveToFile('c:\.bmp');
        TBlobField(table.FieldByName('reportitem')).LoadFromFile('c:\.bmp');
      

  5.   

    使用TBlobField(table.FieldByName('图像字段')).SaveToFile('c:\.bmp');
        TBlobField(table.FieldByName('reportitem')).LoadFromFile('c:\.bmp');
      

  6.   

    可以!binary字段就是TBlobField类型。
    如果你的图片是bitmap还可以这样用:
       TBlobField(X).Assign(TPicture(Y));
      

  7.   

    x代表你的数据库binary字段,y代表存放你图片的TPicture对象。
      

  8.   

    这是我在程序中,保存图片到后台数据库中的一个过程。你看看是否对你有帮助。
    我现很穷,你可要。
    procedure Tfrm_writecar.saveImageintoDB(car_id: string);  //保存图片
    var
       buf2,buf:pchar;
       f1:file;
       filelen:integer;
    begin
      try
        buf2:=pchar(car_id);;
        assignfile(f1,vps_name);
        reset(f1,1);
        filelen:=filesize(f1);
        buf:=allocmem(filelen);
        blockread(f1,buf^,filelen);
        closefile(f1);
        with query2 do
          begin
            close;
            sql.clear;
            sql.add('update t_manager_car set ima_car=:ima_car where car_no=:car_no');
          end;
        try
          query2.ParamByName('car_no').DataType:=ftString;
          query2.ParamByName('car_no').SetData(buf2);
          query2.ParamByName('ima_car').SetBlobData(buf,filelen);
          query2.ExecSQL;
        except
          statusbar1.Panels[1].text:='图片保存出错!';
          exit;
        end;
        //buf2:=nil;
        freemem(buf);
      except
        statusbar1.Panels[1].text:='图片保存出错!';
        exit;
      end;
    end;procedure Tfrm_writecar.GetImagefromDB(car_id: string); //取出图片
    var
     m_jpegstream:tmemorystream;
    begin
      with query2 do
       begin
         close;
         sql.clear;
         sql.Add('select ima_car from t_manager_car where car_no='''+car_id+'''');
         try
           Open;
         except
           exit;
         end;
       end;
      if (query2.FieldByName('ima_car') as tblobfield).asstring='' then
       begin
         exit;
       end
      else
       //(query2.FieldByName('ima_car') as tblobfield).savetofile(car_id+'.jpg');
       begin
        try
         try
           m_jpegStream:=TMemoryStream.Create;
           (query2.fieldbyname('ima_car') as TBlobField).SaveToStream(m_JpegStream);
           image1.Picture.Graphic:=nil;
           image1.Picture.Graphic:=TJpegImage.Create;
           m_JpegStream.Position:=0;
           image1.Picture.Graphic.LoadFromStream(m_JpegStream);
         except
         end;
        finally
          m_JpegStream.Free;
          query2.Close;
          query2.UnPrepare;
        end;
       end;
    end;