mssql sqlserver 数据类型NUMERIC 同DECIMAL区别简介


摘要:
下文将讲述numeric和decimal数据类型的区别,如下所示:
实验环境:sqlserver 2008 R2


numeric、decimal相同点:
1.最大数据精度都为38;
2.numeric、decimal拥有相同的功能;
3.numeric、decimal都是用于存储数值;
4.numeric、decimal拥有相同的声明变量的方式


numeric(p,s)、decimal(p,s)不同点:
1.在sql语言中,带有小数点的数值会自动转换为numeric类型
同时被匹配为最小精度和最小位数
2. numeric  要求固定精度和小数位一样精确,小数位固定长度;
decimal 可能会大于或等于固定精度P的长度,即小数位的长度在存储的时候比实际的长
3. numeric 和 decimal 在sql server底层不是相同的数据类型,不用做主外键关联