插入数据时会自动更新 MySQL 非空字段
mysql数据表
CREATE TABLE `t_shops` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`content` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '内容',
`email` char(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '邮箱',
`phone` char(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '联系人',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci;
php执行代码
$params=[];
DB::enableQueryLog();
$id=Db::table('shops')->insertGetId($params);
$a = DB::getQueryLog();
print_r($a);
执行结果如下
这是为什么呢,不应该是报错吗???我数据库表已经设置成非空了,我查了下底层代码是自动修改成空了,怎么可以取消这个呢,让自己可以直接报错!
推荐文章: