一、常见操作
//1、查看数据库编码格式
mysql> show variables like 'character_set_database'
//2、查看数据表的编码格式
mysql> show create table <表名>;
//3、创建数据库时指定数据库的字符集
mysql>create database <数据库名> character set utf8;
//4、创建数据表时指定数据表的编码格式
create table tb_books (
name varchar(45) not null,
price double not null,
bookCount int not null,
author varchar(45) not null ) default charset = utf8;
//5、修改数据库的编码格式
mysql>alter database <数据库名> character set utf8;
//6、修改数据表格编码格式
mysql>alter table <表名> character set utf8;
//7、修改字段编码格式
mysql>alter table <表名> change <字段名> <字段名> <类型> character set utf8;
mysql>alter table user change username username varchar(20) character set utf8 not null;
二、MySQL字符集设置
character_set_server //默认的内部操作字符集
character_set_client //客户端来源数据使用的字符集
character_set_connection //连接层字符集
character_set_results //查询结果字符集
character_set_database //当前选中数据库的默认字符集
character_set_system //系统元数据(字段名等)字符集
//还有以collation_开头的同上面对应的变量,用来描述字符序。
三、总而言之,插入中文有乱码,解决办法:
set names gbk;//显示设为中文编码(client+connect+results)
alter database user character set gbk;//数据库设为中文编码(database)
show variables like 'character%';//查看所有的编码