美文网首页
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