欢迎投稿

今日深度:

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

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'





mysql 列表里文字内容都是乱码

jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=utf8 再操作就不会乱了
消除乱码
在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET NAMES GBK,代码如下:

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");

数据库字符集为utf-8
连接语句用这个
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARACTER SET UTF8");
mysql_query("SET CHARACTER_SET_RESULTS=UTF8'");
还有个方法就是,如果你自己的机器的话,可以更改MYSQL字符集,一般在MYSQ4和MYSQL5这两个版本中有效。
参考资料:百度文库
 

mysql数据库显示简单中文汉字就乱码的问题助

乱码很难转换成正常的 估计是你的数据库有问题 你排除一下吧

① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql
② 把服务器和客户端的字符集改成自己想用的字符集:GB2312或是utf8等……
具体操作为:打开mysql安装目录下的my.ini;
找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;
③ 重启MySQL服务器,在运行窗口输入:net start mysql
④ 最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2150.html NewsArticle MYSQL 表中汉字写入或字段赋值时乱码情况排误,mysql赋值 -- 当修改字段值,或是直接写入时,汉字变成乱码情况 ,【可注意一下数据库名,记得修改】-- 当字符顺序对汉字不兼容时,可...
评论暂时关闭