如何为DataTable中的一列设置最多6位数字的小数精度



在我的应用程序中,要进行货币分析,我必须以7,6格式处理数字。十进制格式之前的7位数字和小数点之后的6位数字。示例: 1234567.123456

我正在从用户那里获取汇率,并将其发送到通过C#代码的后端。我已经使用以下数据来存储速率并将其发送到sp。

DataTable structureTable = new DataTable("CurrencyAnalysis");
    structureTable.Columns.Add("CurrentYearRate", typeof(decimal));
    structureTable.Columns.Add("PriorYearRate", typeof(decimal));

现在,问题是每当我尝试在小数点后用6位数字保存一个数字时,只有小数点被保存后的前两个数字。I.

只需两个精度。我如何为该列设置小数精度,以便在小数点右侧最多占6位数字?

应用程序背景:

  • C#带有HTML5和AngularJS的Web应用程序
  • SQL Server

将数据库值定义为decimal(18,6),第一个值(18)是精度,第二个(6)是刻度,因此(18,6)本质上是18位,十位位置后6位数字。

<</p> <</p> <</p> <</p>

在数据库中定义为decimal(18,6)

在SQL Server上,您可以使用这三种数据类型:

float -32位(7位)

十进制-128位(28-29个显着数字)

检查是否选择:decimal(18,2)这可能就是为什么您有2个小数。

您也可以将数字存储为Float。

最新更新