TBlobField(FieldByName(字段名)).loadfromfile(图片)

解决方案 »

  1.   

    在库里定义字段类型为Alpha,只存文件名
    用dbimage.loadfromfile
      dbimage.savetofile
      

  2.   

    function DatabaseToFile(AFilename,ANodeId: String): Boolean;
    var
      Mytable:Tadotable;
      //FileHandle: Integer;
      BlobStream: TFileStream;
    begin
      Result := True;
      Mytable:=Tadotable.Create(Nil);
      Try
        Mytable.connection := SysDataModule.ADOCtnMain;
        Mytable.TableName := 'ModeTable';
        Mytable.Open;
        Mytable.filter := 'NodeId='''+ ANodeId+'''';
        Mytable.Filtered:=true;
        If MyTable.FieldByName('ReportMode').IsNull Then
          Result := False
        Else
        Begin
          If Not FileExists(AFileName) Then
          Begin
            {Try
             FileHandle := FileCreate(AFileName);
            Finally
              FileClose(FileHandle);
            End;}
            BlobStream := TFileStream.Create(AFileName, fmCreate);
          End
          Else
            BlobStream := TFileStream.Create(AFileName, fmOpenReadWrite);
          //Tblobfield(mytable.fieldbyname('ReportMode')).SaveToFile(Afilename);
          Try
           Tblobfield(mytable.fieldbyname('ReportMode')).SaveToStream(BlobStream);
          Finally
            BlobStream.Free;
          End;
        End;
      Finally
        Mytable.close;
        Mytable.free;
      End;
    end;