美文网首页
mysql多条数据插入时 null 值处理

mysql多条数据插入时 null 值处理

作者: laravel | 来源:发表于2017-06-02 11:10 被阅读27次

结论: mysql在多条数据同时插入的情况下,可以向not null选项的字段插入null值

  1. 数值类型转化为 0 , 不会转化为该列默认值
  2. 字符串类型转化为 "",不会转化为该列默认值

表结构设计如下

CREATE TABLE `tb3` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `c1` int(11) NOT NULL DEFAULT '-1',
  `c2` varchar(255) NOT NULL DEFAULT 'nil',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8

执行如下sql

insert into tb3(c1,c2) values(null,null),(2,null)

查询出来数据如下

插入单条数据并无此问题,会直接报错
insert into tb3(c1,c2) values(null,null) 会报 [Err] 1048 - Column 'c1' cannot be null
sql_mode : NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

相关文章

网友评论

      本文标题:mysql多条数据插入时 null 值处理

      本文链接:https://www.haomeiwen.com/subject/bfzyfxtx.html