Sql server 需要有关SQL Server中货币数据类型准确性的帮助吗

Sql server 需要有关SQL Server中货币数据类型准确性的帮助吗,sql-server,types,Sql Server,Types,我正在为一家银行机构开发一个应用程序,在那里,货币交易的准确性非常重要。我正在考虑在SQL Server中使用数据类型Money 所以我需要建议我使用的数据类型是否足以提供准确性?我还想知道如果我使用numeric数据类型或Money数据类型,哪个更好 提前感谢在中快速搜索会发现 money -922,337,203,685,477.5808 to 922,337,203,685,477.5807 8 bytes smallmoney - 214,748.3648

我正在为一家银行机构开发一个应用程序,在那里,货币交易的准确性非常重要。我正在考虑在SQL Server中使用数据类型
Money

所以我需要建议我使用的数据类型是否足以提供准确性?我还想知道如果我使用
numeric
数据类型或
Money
数据类型,哪个更好

提前感谢

在中快速搜索会发现

money
     -922,337,203,685,477.5808 to 922,337,203,685,477.5807     8 bytes

smallmoney
     - 214,748.3648 to 214,748.3647                            4 bytes
money和smallmoney数据类型精确到它们所代表的货币单位的万分之一。(小数点后四位)


具有固定精度和比例的数字数据类型

decimal[ (p[ ,s] )] and numeric[ (p[ ,s] )]
固定精度和刻度数字。使用最大精度时,有效值为-10^38+1到10^38-1之间的。十进制的ISO同义词是dec和dec(p,s)。numeric在功能上等同于decimal

p(精度)

小数点左侧和右侧可存储的最大小数位数总数。精度必须是从1到最大精度38之间的值。默认精度为18

s(比例尺)


小数点右侧可存储的最大小数位数。比例必须是从0到p的值。仅当指定了精度时,才能指定比例。默认比例为0;因此,这里有一些支持/反对金钱的论点:这里: