新建数据库常见报错(编码格式、默认值无效)1067 - Invalid default value for ' '
新建数据库的常见错误
我这里使用Navicat来做演示。
先使用create来创建一个数据库。
create database 数据库名;
建好数据库之后如果是分步进行的话就会面临的第一个问题;
无法直接创建数据表
直接创建数据表的话创建的表找不到在哪个数据库里面;
所以我们要先使用这个数据表。代码如下
use 数据库名;
上述完成之后,我们继续开始新建数据表,同时我们开始遇到第二个常见错误;
默认值无效(1067 - Invalid default value for ’ ')
开始找原因:
先在mysql执行 show variables like “character%”; 查看编码格式。
show variables like "character%";
这个时候我们就发现,新建数据库的编码格式都默认为Latin了,所以不支持中文,那么我们先将这些编码格式都修改为支持中文的utf-8;
set character_set_client = utf8;
set character_set_connection = utf8;
set character_set_database = utf8;
set character_set_filesystem = utf8;
set character_set_results = utf8;
set character_set_server = utf8;
完成之后
这个时候我们再执行新建表格的操作时就不会报1067错误了: