【发布时间】:2012-07-19 02:59:21
【问题描述】:
考虑到MSDN 对 NUMERIC/DECIMAL 精度的 SQL Server 2008 R2 存储的陈述。
1 到 9 的精度为 5 个字节
10 到 19 的精度为 9 个字节
因此,如果我的业务案例在逻辑上需要具有 2 位小数和 5 位精度的数据类型,那么如果我将其定义为 NUMERIC(5, 2) 或NUMERIC(9, 2)。
一个考虑到我故意忽略的是隐含的检查约束,因为我很可能会在限制实际允许范围的列上放置一个实际的检查约束。
这对索引、查询性能或系统的任何其他方面有影响吗?
【问题讨论】:
-
NUMERIC 不能确保插入/更新的值中存在小数位。
-
使用 sum() 测试溢出。
标签: sql-server database-design data-structures