自动舍入sql d

unhi4e5o  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(390)

我有一个mysql数据库,有课程和价格(十进制10.0)。问题是当我添加一个价格时,例如12.5,sql将转换为13。为什么会这样?

hec6srdp

hec6srdp1#

要定义数据类型为decimal的列,请使用以下语法:

column_name DECIMAL(P, D)

其中p是表示小数点左边位数的精度,&d是表示小数点右边位数的刻度
因此,在你的例子中 prices(DECIMAL 10.0) p是10,d是0。
因此,在您的价格栏中,小数点左边总是有10位数字,小数点右边总是0。
要更新prices列以允许小数点右侧有更多位数,语法如下:

alter table table_name modify column prices DECIMAL(10,4);

相关问题