批量修改MySQL表字符集和排序規(guī)則

目錄

一奴愉、問(wèn)題

二欠气、修改字符集

三职辨、修改庫(kù)字符集和排序規(guī)則

四盗蟆、修改表和字段字符集以及排序規(guī)則

1、查詢并生成修改語(yǔ)句

2舒裤、生成簡(jiǎn)潔的修改表以及字段字符集和排序規(guī)則的語(yǔ)句

一喳资、問(wèn)題

? ? ? ? 由于建庫(kù)建表指定的數(shù)據(jù)庫(kù)字符集和排序規(guī)則,和應(yīng)用需求不一致腾供,導(dǎo)致系統(tǒng)因字符集不一致異常仆邓。

二鲜滩、修改字符集

? ? ? ? 該生產(chǎn)庫(kù)使用MySQL8.0版本,使用的默認(rèn)字符集為:utf8mb4 ;使用的排序規(guī)則是: utf8mb4_0900_ai_ci节值。

? ? ? ? 通過(guò)測(cè)試驗(yàn)證和評(píng)估徙硅,需要修改該生產(chǎn)庫(kù)庫(kù)、表和字段的排序規(guī)則為utf8mb4_general_ci和自字符集為utf8mb4搞疗。

? ? ? ? 查看庫(kù)嗓蘑、表以及字段的字符集和排序規(guī)則命令

-- 查看庫(kù)、表以及字段的字符集和排序規(guī)則命令

-- 方法一

-- 1匿乃、查看指定庫(kù)排序規(guī)則和字符集

show create database '庫(kù)名字';

-- 2桩皿、查看指定表以及排序規(guī)則和字符集

show create table '表明字';

-- 方法二

select * from? information_schema.`TABLES` where TABLE_SCHEMA='庫(kù)名字' and tables='表名字'

select * from? information_schema.`COLUMNS` where TABLE_SCHEMA='庫(kù)名字' and tables='表名字'

三、修改庫(kù)字符集和排序規(guī)則

-- 修改庫(kù)的排序規(guī)則和字符集

ALTER database '庫(kù)名' DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;

四扳埂、修改表和字段字符集以及排序規(guī)則

1业簿、查詢并生成修改語(yǔ)句

-- 1、查看需要修改字符集和排序規(guī)則的表

SELECT

? ? TABLE_SCHEMA AS '數(shù)據(jù)庫(kù)',

? ? TABLE_NAME AS '表',

? ? TABLE_COLLATION AS '原排序規(guī)則',

? ? CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;') AS '修正SQL'

FROM

? ? information_schema.`TABLES`

WHERE

? ? TABLE_COLLATION ='utf8mb4_0900_ai_ci' AND TABLE_SCHEMA = '庫(kù)名字';

-- 2阳懂、查看需要修改字符集和排序規(guī)則的字段

SELECT

? ? TABLE_SCHEMA AS '數(shù)據(jù)庫(kù)',

? ? TABLE_NAME AS '表',

? ? COLUMN_NAME AS '字段',

? ? CHARACTER_SET_NAME AS '原字符集',

? ? COLLATION_NAME AS '原排序規(guī)則',

? ? CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' MODIFY COLUMN `', COLUMN_NAME, '` ', COLUMN_TYPE, ' CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;') AS '修正SQL'

FROM

? ? information_schema.`COLUMNS`

WHERE

? ? CHARACTER_SET_NAME = 'utf8mb4' AND COLLATION_NAME != 'utf8mb4_general_ci' AND TABLE_SCHEMA = '庫(kù)名字';

2梅尤、生成簡(jiǎn)潔的修改表以及字段字符集和排序規(guī)則的語(yǔ)句

-- 1、生成修改表 的字符集和排序規(guī)則的SQL語(yǔ)句

SELECT? ? CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;') AS '修正SQL'

FROM

? ? information_schema.`TABLES`

WHERE

? ? TABLE_COLLATION ='utf8mb4_0900_ai_ci' AND TABLE_SCHEMA = '庫(kù)名字';

-- 2岩调、生成修改字段 的字符集和排序規(guī)則的SQL語(yǔ)句

SELECT? ? CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' MODIFY COLUMN `', COLUMN_NAME, '` ', COLUMN_TYPE, ' CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;') AS '修正SQL'

FROM

? ? information_schema.`COLUMNS`

WHERE

? ? CHARACTER_SET_NAME = 'utf8mb4' AND COLLATION_NAME != 'utf8mb4_general_ci' AND TABLE_SCHEMA = '庫(kù)名字';

文章知識(shí)

————————————————

版權(quán)聲明:本文為CSDN博主「@土豆」的原創(chuàng)文章巷燥,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明号枕。

原文鏈接:https://blog.csdn.net/weixin_44770684/article/details/127006877

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末缰揪,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子葱淳,更是在濱河造成了極大的恐慌钝腺,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赞厕,死亡現(xiàn)場(chǎng)離奇詭異艳狐,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)皿桑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)毫目,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人诲侮,你說(shuō)我怎么就攤上這事镀虐。” “怎么了沟绪?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵刮便,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我绽慈,道長(zhǎng)恨旱,這世上最難降的妖魔是什么抄肖? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮窖杀,結(jié)果婚禮上漓摩,老公的妹妹穿的比我還像新娘。我一直安慰自己入客,他們只是感情好管毙,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著桌硫,像睡著了一般夭咬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上铆隘,一...
    開(kāi)封第一講書(shū)人閱讀 52,457評(píng)論 1 311
  • 那天卓舵,我揣著相機(jī)與錄音,去河邊找鬼膀钠。 笑死掏湾,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的肿嘲。 我是一名探鬼主播融击,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼雳窟!你這毒婦竟也來(lái)了尊浪?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤封救,失蹤者是張志新(化名)和其女友劉穎拇涤,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體誉结,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鹅士,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了搓彻。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片如绸。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡嘱朽,死狀恐怖旭贬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情搪泳,我是刑警寧澤稀轨,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站岸军,受9級(jí)特大地震影響奋刽,放射性物質(zhì)發(fā)生泄漏瓦侮。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一佣谐、第九天 我趴在偏房一處隱蔽的房頂上張望肚吏。 院中可真熱鬧,春花似錦狭魂、人聲如沸罚攀。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)斋泄。三九已至,卻和暖如春镐牺,著一層夾襖步出監(jiān)牢的瞬間炫掐,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工睬涧, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留募胃,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓畦浓,卻偏偏與公主長(zhǎng)得像摔认,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子宅粥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容