比如 int(3) ,124576894这样的数字仍可以存
decimal(2.2)仍然可以存1.2323258这样的数字
1、是否意味着int和decimal后面不需要定义具体的数值范围呢,或者说没必要。定义了也没限制
2、定义和没定义数值范围是否没区别?
比如 int(3) ,124576894这样的数字仍可以存
decimal(2.2)仍然可以存1.2323258这样的数字
1、是否意味着int和decimal后面不需要定义具体的数值范围呢,或者说没必要。定义了也没限制
2、定义和没定义数值范围是否没区别?
SQL mode 是不是把严格模式关掉了,虽然写入成功了,应该被截断写入了。
明天可以看下是什么模式,我看存下来的就收我想插入的,没有截断
int(3) 和int(100) 没区别,都是4个byte存储的
可以看看这里,感觉只是控制显示。
int设位长没有作用,最大的数还是2的32次方
只影响显示,不影响存储
原来是这样,我试试
int 是固定大小的,int(3) 是格式化展示补充的位数
比如 int(4),你数据是10,展示输出的10.00 ,格式化出来占位符类似
(https://docs.pingcap.com/zh/tidb/stable/data-type-numeric#integer-类型)
INTEGER
类型INTEGER
类型,别名 INT
。有符号数的范围是 [-2147483648, 2147483647]
。无符号数的范围是 [0, 4294967295]
。
INT[(M)] [UNSIGNED] [ZEROFILL]
字段说明:
语法元素 | 说明 |
---|---|
M | 类型显示宽度,可选 |
SQL mode的配置导致的
SQL mode的配置的问题吧