2013-02-02 41 views
-3

在这张表中,我想插入浮动类型的权重列中的值,其值为00,如100.00,150.00,25.00,小数点为 。如何在SQL Server数据库中将带小数位的值插入为00?

在这个表中,如果我要插入25.5,然后它会显示十进制数位,如果我储存135.00它将存储135只没有表现出小数,如果00

+6

值的显示是用户界面层的功能,而不是数据库。它是纯粹展示你感兴趣还是对存储的实际精度更感兴趣? –

+0

http://stackoverflow.com/questions/441600/write-a-number-with-two-decimal-places-sql-server/9313274#9313274 – HABO

回答

1

我不确定你的问题是你在找什么。存储和显示是两件独立的事情。

STORAGE

如果你想存储一些在SQL Server中使用十进制固定精度

CREATE TABLE MyTable 
(
    MyNumber DECIMAL(5,2) 
) 

以上将存储5个数字,3小数点前和两个后。

这里的文档:http://msdn.microsoft.com/en-gb/library/ms187746.aspx

如果要存储的货币值,再有就是MONEY数据类型太:http://msdn.microsoft.com/en-us/library/ms179882.aspx

显示

如果您更感兴趣的是值的显示而不是存储(你已经提到它们是数据库中的浮点数),那么在你的C#应用​​程序中,你可以使用类似这样的东西:

string display = string.Format("{0:0.00}", myNumber); 

这里有一个数字的自定义格式转换为字符串的文件:http://msdn.microsoft.com/en-gb/library/0c899ak8.aspx

+0

对于显示部分:“”0.00“的替代方法是' “F2”,或者只是“F”,如果你想依赖于当前文化的数字格式指定的小数位数。 –

0

如果是float类型,然后X.00f = Xf其中X是任何整数。 是的,它存储135135.00 - 如果它是一个浮动,真的是一样的。

相关问题