Delphi ADO从SQL Server中舍入十进制值

Mad*_*Dog 3 delphi ado decimal

我有一个表(MS SQL Server),其数据类型为decimal(18,8).在我的应用程序中,我输入值0.000089并保存.我用SQL Server Management Studio检查表,值是OK(0.00008000).但是当我使用TADOQuery读取值时,它返回0.0001(总是舍入到4位小数位 - 0.123456789 - > 0.1235).我用TDataSource和TDBTable尝试TADOTable,也是ADOExplorer工具,结果是一样的.问题出在哪儿?

小智 8

禁用组件中的EnableBCD属性TADOQuery

when EnableBCD为true时,它可以支持4位小数.when EnableBCD为false时,字段映射到TFloatField.

在此输入图像描述

  • @MadDog,你可以通过upvoting并接受答案来感谢他. (3认同)