文档章节

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

The_Answer
 The_Answer
发布于 2017/08/10 09:40
字数 177
阅读 9
收藏 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
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基本管理 1.启动mysql /etc/init.d/mysqld是一个shell启动脚本,启动后最终会调用mysqld_safe脚本,最后调用mysqld服务启动mysql,如下: /etc/init.d/mysqld start 或/usr/local/my...

80后小菜鸟
2017/05/21
0
0
数据库乱码情况分析处理_已迁移

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

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

没有更多内容

加载失败,请刷新页面

加载更多

初识flask

文档 0.10.1版本 http://www.pythondoc.com/flask/index.html 1.0.2版本 https://dormousehole.readthedocs.io/en/latest/ 安装flask $ pip3 install flaskCollecting flask Downloading......

yimingkeji
昨天
1
0
Akka系统《sixteen》译

Actor是一个封装状态(state)和行为(behavior)的对象,它们只通过交换消息通信(放入收件人邮箱的邮件)。从某种意义上说,Actor是最严格的面向对象编程形式,但它更适合将他们视为人:在与Act...

woshixin
昨天
1
0
技术工坊|如何开发一款以太坊钱包(深圳)

【好消息!】HiBlock区块链技术工坊已经成功举办了26期,其中北京1期,西安1期,成都2期,上海22期。经常有社区的小伙伴问定期举办技术工坊的除了上海以外,其他城市有没有?现在区块链技术工...

HiBlock
昨天
1
0
Redis 梳理笔记

安装 安装gccyum install gcc-c++下载传输到服务器上解压tar -xzvf *.tar.gzcd redis-3.2.9编译make安装 make PREFIX=/usr/local/redis install将配置文件拷贝出来cp redis...

晨猫
昨天
0
0
聊聊storm TridentWindowManager的pendingTriggers

序 本文主要研究一下storm TridentWindowManager的pendingTriggers TridentBoltExecutor.finishBatch storm-core-1.2.2-sources.jar!/org/apache/storm/trident/topology/TridentBoltExecut......

go4it
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部