在Delphi XE上,我使用来自TpFIBDataSet的 OldValue和 NewValue(但它可以应用于任何TDataSet后代),以验证是否有不同的字段已更改.我的问题是如何将这两个blob字段的值检索为TMemoryStreams?我做了一些
          function FieldChanged(DataSet: TDataSet; FieldName: string): Boolean;
var
  fld: TField;
begin
  fld := DataSet.FieldByName(FieldName);
  if fld.IsBlob then
    Exit((fld as TBlobField).Modified);
  if (fld.OldValue = Null) and (fld.NewValue = Unassigned) then // This happens when a NULL field does not change
    Exit(False)
  else
    Exit(fld.OldValue <> fld.NewValue);
end;
        
             