免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

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

2023.07.11 湖南

關注

取生成修改sql重新運行進行修改即可

一、問題

二、修改字符集

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

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

1、查詢并生成修改語句

2、生成簡潔的修改表以及字段字符集和排序規(guī)則的語句

一、問題

        由于建庫建表指定的數據庫字符集和排序規(guī)則,和應用需求不一致,導致系統因字符集不一致異常。

二、修改字符集

        該生產庫使用MySQL8.0版本,使用的默認字符集為:utf8mb4 ;使用的排序規(guī)則是: utf8mb4_0900_ai_ci。

        通過測試驗證和評估,需要修改該生產庫庫、表和字段的排序規(guī)則為utf8mb4_general_ci和自字符集為utf8mb4。

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

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

-- 方法一

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

show create database '庫名字';

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

show create table '表明字';

-- 方法二

select * from  information_schema.`TABLES` where TABLE_SCHEMA='庫名字' and tables='表名字'

select * from  information_schema.`COLUMNS` where TABLE_SCHEMA='庫名字' and tables='表名字'

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

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

ALTER database '庫名' DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;

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

1、查詢并生成修改語句

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

SELECT

    TABLE_SCHEMA AS '數據庫',

    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 = '庫名字';

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

SELECT

    TABLE_SCHEMA AS '數據庫',

    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 = '庫名字';

2、生成簡潔的修改表以及字段字符集和排序規(guī)則的語句

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

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 = '庫名字';

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

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 = '庫名字';

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

版權聲明:本文為CSDN博主「@土豆」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
mysql 批量修改表字符集和排序規(guī)則
不可忽視的MySQL字符集
MySQL字符集與排序規(guī)則 MySQL DBA學習
mysql查詢時不區(qū)分大小寫
再見亂碼:5分鐘讀懂MySQL字符集設置
成功將網站從HostGator遷移到阿里云虛擬主機
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服