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,没有四舍五入直接舍去了。