文档章节

修改MySql中数据表和字段的字符集和排序规则

The_Answer
 The_Answer
发布于 2017/08/10 09:40
字数 177
阅读 11
收藏 0

用法:先执行如下脚本生成修改数据表和表字段的脚本,然后再执行这些生成的脚本。

1. 修改指定数据库中所有varchar类型的表字段的字符集为UTF8,并将排序规则修改为utf8_general_ci

SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, '(', CHARACTER_MAXIMUM_LENGTH, ') CHARACTER SET UTF8 COLLATE utf8_general_ci', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END), ';')
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'databaseName'
AND DATA_TYPE = 'varchar'
AND
(
    CHARACTER_SET_NAME != 'utf8'
    OR
    COLLATION_NAME != 'utf8_general_ci'
);

2. 修改指定数据库中所有数据表的字符集为UTF8,并将排序规则修改为utf8_general_ci
SELECT CONCAT('ALTER TABLE ', table_name, ' CONVERT TO CHARACTER SET  utf8 COLLATE utf8_unicode_ci;')
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = 'databaseName'

© 著作权归作者所有

共有 人打赏支持
The_Answer
粉丝 0
博文 2
码字总数 289
作品 0
普陀
后端工程师
私信 提问
MySQL 语法规则以及字符集

MySQL 标识符语法 & 命名规则 在引用数据库的元素时,标识符必须遵守以下规则: 1、标识符里的合法字符; 2、MySQL 服务器的 SQL 模式; 3、标识符的长度; 4、标识符限定符。 MySQL 语句中的...

TinyDolphin
2018/01/04
0
0
批量修改mysql表、表、数据库的字符校对规则

记录一个在工作中遇到的问题,也不算是问题,为的是找一种简便的方法批量修改数据表字段的排序规则,在MySQL中叫collation,常常和编码CHARACTER一起出现的。collation有三种级别,分辨是数据...

IT_小翼
2015/09/17
891
0
MySQL 字段内容区分大小写

数据由Oracle 迁入MySQL ,由于之前Oracle区分大小写,MySQL的配置使用了默认配置,导致一些数据导入失败,有的唯一键报错,冲突。 将测试过程记录在下面。 数据库版本:MySQL 5.7.11 引用他...

Amnesiasun
2017/06/01
0
0
让MySQL支持中文排序的实现方法

在处理使用Mysql时,数据表采用utf8字符集,使用中发现中文不能直接按照拼音排序 如果数据表tbl的某字段name的字符编码是latin1swedishci select from order by birary(name) asc ; 如果数据...

Carl_
2016/02/18
99
1
数据库乱码情况分析处理_已迁移

服务器级别 数据库级别 数据表级别 数据表字段级别 修改数据表的字符集,但是默认的情况下字段的字符集不会更改,所以我需要使用alter table 这种方法再将字段的字符集进行修改 mysqlsetchar...

辣条拌鱼翅
2015/06/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【Python3之异常处理】

一、错误和异常 1.错误 代码运行前的语法或者逻辑错误 语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) def test: ^SyntaxError: invalid...

dragon_tech
34分钟前
1
0
编写可维护的 JavaScript

几乎每个程序员都有接手维护别人遗留项目的经历。或者,有可能一个老项目某一天又被重新启动。 通常情况下,接手老项目都会让人恨不得抛弃掉整个代码库从头开始。老代码凌乱、文档缺失、需要...

前端小攻略
46分钟前
2
0
Amino——框架层

框架层 目录 框架层... 1 Amino. 2 (一)、首页(TAB1)... 2 (二)、聊天(TAB2)... 3 (三)、我的社区(TAB3)... 5 (四)、探索(TAB4)... 6 (五)、钱包... 7 兴趣部落... 8 (一...

铸剑为犁413
今天
1
0
k8s-dashboard

Kubernetes Dashboard 是一个管理Kubernetes集群的全功能Web界面,旨在以UI的方式完全替代命令行工具(kubectl 等) kubectl apply -f http://mirror.faasx.com/kubernetes/dashboard/master...

ZH-JSON
今天
1
0
python如何安装库命令

python3 -m pip install 库名称

怪咖先生forever
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部