属性顺序错误
一般情况下字段类型要放在前面,限制参数放在后面,UNSIGNEDZEROFILL 之间没有先后顺序,主键 KEY 和 auto_increment 要放在UNSIGNED ZEROFILL 后面 否则报错 。设置为主键的字段没有 deafault参数,not null 一般放在最后面。
中文乱码
数据库,表,字段的字符集应该是相同的
查看数据库的编码格式:
show variables like 'character_set_database';
修改数据库的编码格式:
alter database '数据库名' character set utf8;
查看表的编码格式:
show create table '表名';
修改表的编码方式:
alter table '表名' default character set utf8;
修改字段的编码方式:
alter table '表名' change '字段名' '字段名' 类型
character set utf8;
mysql密码丢失解决办法
1、关闭正在运行的 MySQL 服务。
2、打开 CMD 窗口,转到 mysql/bin 目录。
3、输入 mysqld --skip-grant-tables 回车。 --skip-grant-tables 的意思是
启动 MySQL 服务的时候跳过权限表认证。(没有报错即可)
4、再开一个 CMD 窗口(之前打开的 CMD 窗口不要关闭),进入到 bin 目录
中,输入 mysql 回车,如果成功,将出现 MySQL 提示符 >。
5、连接权限数据库: use mysql; 。
6、改密码(别忘了最后加分号):
Wamp2 版本:
update user set password=password("123456") where user="root";
Wamp3 版本:
update user set authentication_string=password('123456') where user='root';
7、刷新权限(必须步骤):flush privileges;
8、退出 quit。
9、重启 mysql 服务,使用用户名 root 和刚才设置的新密码 root 登录就可以了。