两者有什么区别numeric
, float
and decimal
数据类型以及在什么情况下应该使用哪些数据类型?
对于任何类型的金融交易(例如薪资领域),首选哪一种?为什么?
use the float or real数据类型only if提供的精度decimal(最多38位)不足
因此,如果满足以下条件,通常选择 Decimal 作为数据类型是最好的选择:
- 你的号码可以放进去。小数精度是 10E38[~ 38 位]
- Float 较小的存储空间(也许还有计算速度)对你来说并不重要
- 需要精确的数字行为,例如在金融应用程序中、在涉及舍入的操作中或在相等检查中。 (Technet)
-
Exact数字数据类型小数和数字 - MSDN
- numeric = decimal (5 to 17 bytes)
- 将映射到 .NET 中的十进制
- 两者都将 (18, 0) 作为 SQL Server 中的默认(精度、小数位数)参数
- 标度 = 小数点右侧可存储的最大小数位数。
- Money(8 字节)和 SmallMoney(4 字节)也是精确数据类型,将映射到 .NET 中的 Decimal 并具有 4 个小数点(MSDN)
-
近似数字数据类型浮点数和实数 - MSDN
- real (4 byte)
- 将映射到 .NET 中的 Single
- 实数的 ISO 同义词是 float(24)
- float (8 byte)
- All exact无论使用哪种处理器架构,数字类型总是产生相同的结果或数字的大小
- 提供给浮点数据类型的参数定义了用于存储浮点数据的位数。mantissa浮点数的.
- 近似数字数据类型通常使用更少的存储空间并具有更快的速度(高达 20 倍),您还应该考虑它们何时在 .NET 中进行转换
- C#中Decimal、Float、Double有什么区别
- 十进制与双倍速度
- SQL Server - .NET 数据类型映射(来自 MSDN)
主要来源 : MCTS 自定进度培训套件(考试 70-433):Microsoft® SQL Server® 2008 数据库开发- 第 3 章 - 表、数据类型和声明性数据完整性第 1 课 - 选择数据类型(指南) - 第 93 页
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)