mysql字段defalut ''的区别
以下语句中,有什么区别么?老大说有,不是特别的清楚
`record_name` varchar(50) DEFAULT '' COMMENT '记录名'
`record_name` varchar(50) NOT NULL DEFAULT '' COMMENT '记录名'
回答:
除了一楼说的写入的区别之外,还有两点区别:
- 在
MySQL
中NULL
是需要占空间的; - 在索引中没有办法存储
NULL
;
因此,这也就是为什么我们经常看到NOT NULL DEFAULT ''
的原因所在。
回答:
第一个可以置为null,第二个不可以。。。
回答:
设置了default关键字过后,not null感觉有没有都没太大的区别
回答:
一楼正解,之前有个同事搞测试环境上题主中的第一种方式,到了正式环境是第二种方式,测试时没有发现问题,到了正式环境就报错了,提示字段类型错误,就是因为正式环境里insert语句有null设置
回答:
1、可以从下图中看到,如果是null的话,每一条记录开始时都会在最前面有额外的字节标识,如第12列是null,就需要用额外的两字节 0800来标识
2、同时如果索引中有null会导致索引不生效
3、做比较是 可能会出现 null == 0的不正确结果
以上是 mysql字段defalut ''的区别 的全部内容, 来源链接: utcz.com/a/160892.html