mysql十进制字段的正确默认值是什么?

qlvxas9a  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(479)

我有一个 decimal mysql数据库中的字段。我将其定义为: decimal(1,1) UNSIGNED NULL . 但是我想为它设置一个默认值 7.0 ,这就是我的问题。每当我想设置这个值时,就会出现以下错误:

Invalid default value ...

我也试着把它设为 7,0 以及 7 但结果是同样的错误。mysql十进制字段的正确默认值是什么?
注意:我正在使用navicat for mysql

tpxzln5u

tpxzln5u1#

在mysql中,声明 DECIMAL(P,S) :
精度(p)表示为值存储的有效位数,小数位数(s)表示小数点后可以存储的位数。
所以在你的例子中, DECIMAL(1,1) 表示最多1位,点后最多1位。。。这根本说不通。
为了更好地理解,这里有更多的例子: DECIMAL(5,2) :5位数字,其中两位用于小数部分。因此,可能的值范围为-999.99到999.99 DECIMAL(5,0) :不允许小数部分,因此它相当于一个最多5位的整数。
UNSIGNED ,行为相同,但使用减号将引发错误。

相关问题