cloak

  1.查看数据库支持的所有字符集
        show character set;或show char set;

  2.查看当前状态 里面包括当然的字符集设置
        status或者\s

  3.查看系统字符集设置,包括所有的字符集设置
        show variables like \'char%\';

  4.查看数据表中字符集设置
        show full columns from tablename; 或者 show create table tablename\G;

  5.查看数据库编码
        show create database dnname; 


修改字符集命令
级别 命令 时效 备注
服务器 SET GLOBAL character_set_server=utf8;  临时  
服务器 修改配置文件:  [mysqld] default-character-set=utf8  永久  
数据库 SET GLOBAL character_set_database=utf8; 临时  
数据库 同修改服务器 临时  
表 ALTER TABLE table_name DEFAULT CHARSET utf8; 永久  
列 alter table `t_test` change `name` `name` varchar (255)  character set  utf8 collate utf8_general_ci null default null; 永久  
连接 show variables like \'char%\'; 临时  
连接 修改配置文件:  [client] default-character-set=utf8  永久  


创建时指定字符集
级别 命令
服务器级 在安装MySQL时可以设置服务器的默认编码格式
数据库级 CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

或者 CREATE DATABASE 数据库名 default charset=utf8 collate=utf8_general_ci;


表级 CREATE TABLE  `db_name`.`tb_name` (      id VARCHAR(20) NOT NULL,     name VARCHAR(20)) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
列级 CREATE TABLE  `db_name`.`tb_name` (  id varchar(20) NOT NULL,  name varchar(20) CHARACTER SET utf8);

 

查看字符集:

show variables like \'collation_%\';
show variables like \'character_set_%\';

创建和修改数据库字符集:

create database mydb character set utf8 collate utf8_general_ci;
alter database mini default character set = gb2312; 

修改数据表字符集:

alter table pub_logs default character set = gb2312;
alter table pub_logs convert to character set gb2312;

生成批量修改表字符集:

SELECT a.TABLE_TYPE,CONCAT(\'alter TABLE \',A.TABLE_NAME,\' default character set = gb2312;\')  FROM INFORMATION_SCHEMA.TABLES A
WHERE A.TABLE_SCHEMA=\'MINI\'
AND a.TABLE_TYPE=\'BASE TABLE\'

生成批量修改列字符集:

SELECT CONCAT(CONCAT(CONCAT(\'alter TABLE \',c.TABLE_NAME,\' modify\'),CONCAT(\' \',C.COLUMN_NAME,\' \'),C.COLUMN_TYPE),\' \',\' character set gb2312 COLLATE gb2312_chinese_ci;\') AS CLOU
FROM 
INFORMATION_SCHEMA.COLUMNS C,INFORMATION_SCHEMA.TABLES A
WHERE c.TABLE_SCHEMA=\'MINI\'
  AND A.TABLE_NAME=c.TABLE_NAME
  AND A.TABLE_TYPE=\'BASE TABLE\'
  AND c.DATA_TYPE=\'varchar\'
  ;

分类:

技术点:

相关文章:

  • 2022-02-02
  • 2022-02-10
  • 2021-07-20
  • 2021-11-28
  • 2022-12-23
  • 2021-11-30
猜你喜欢
  • 2021-04-14
  • 2021-10-02
  • 2021-11-28
  • 2021-11-27
  • 2021-10-28
相关资源
相似解决方案