首页 > 代码库 > MYSQL 表中汉字写入或字段赋值时乱码情况排误

MYSQL 表中汉字写入或字段赋值时乱码情况排误

-- 当修改字段值,或是直接写入时,汉字变成乱码情况 ,【可注意一下数据库名,记得修改】
-- 当字符顺序对汉字不兼容时,可能直接导致乱码情况发生。   最好做到库、表、字段(字符类型)排序规则是否一致
-- eg.在某库下建了临时表没有指定字符排序规则,下游会使用时,将临时表中的str字段值赋值给另外一个库表,可能会出现乱码
-- 未指定排序建表时,则表的排序规则是其库的排序规则


-- 1.  库级别
SELECT * -- DEFAULT_CHARACTER_SET_NAME  DEFAULT_COLLATION_NAME  关注列 --  utf8                        utf8_general_ci 
FROM information_schema.`SCHEMATA` 
WHERE SCHEMA_NAME = 'AdDataCenter';


-- 2. 表级别
SELECT * -- TABLE_COLLATION  关注列 -- utf8_general_ci
FROM information_schema.`TABLES` t
WHERE t.`TABLE_SCHEMA` = 'AdDataCenter'


-- 3. 字段级别
SELECT * -- COLLATION_NAME 关注列 -- utf8_general_ci
FROM information_schema.`COLUMNS` AS c
WHERE c.`TABLE_SCHEMA` = 'AdDataCenter'