我用adoquery进行查询sql server数据库
sql.add('select * from tablename');
在数据库里的有些记录的数字小数点后很长,如228.277633333333
如何在查询后显示到DBGRID里时让这个数四舍五入只保留两位小数?变成228.28。

解决方案 »

  1.   

    在Fields editer设置对应字段的DisplayFormat为#0.##
      

  2.   

    procedure TfrmYSYWDJB.ADOQuery1AfterOpen(DataSet: TDataSet);
    var
      I: Integer;
    begin
      for I := 0 to DataSet.FieldCount - 1 do
        case DataSet.Fields[I].DataType of
          ftBCD, ftFloat, ftInteger: 
            TBCDField(DataSet.Fields[I]).DisplayFormat := '0.00';
        end;
    end;