SQl Server 中的decimal( m , n )的意思

Posted Bytwo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQl Server 中的decimal( m , n )的意思相关的知识,希望对你有一定的参考价值。

create table sc(
cno varchar(13),
sno varchar(13),
grade decimal(5,2),
primary key(cno,sno),
foreign key(cno) references cou(cno),
foreign key(sno) references stu(sno),
)

decimal(m,n)的意思是m位数中,有n位是小数,即m-n位整数。

上述实例decimal(5,2)的意思是三位整数和两位小数

例1

insert into sc(sno,cno,grade) values(2020006,20201,1000);

整数有四位会出现数据溢出错误

消息 8115,级别 16,状态 8,第 129 行
将 int 转换为数据类型 numeric 时出现算术溢出错误。

例2

insert into sc(sno,cno,grade) values(2020007,20201,100.798);

最后插入的成绩是100.79,没有四舍五入直接舍去了。

以上是关于SQl Server 中的decimal( m , n )的意思的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server - 如何根据动态公式执行计算

在sql server数据库中将一个nvarchar类型的空值转换成decimal(18,3)类型

SQL Server 小数类型(float 和 decimal)小数相除求占比为1的方法

SQL SERVER类型与C#类型对照

sql server 2008环境中,字段为decimal(18,2),当输入为空时,会报错。

sql server 中何时使用 Money 数据或 Decimal 数据类型来存储成本值? [复制]