• 17
  • 3月

在网上搜索了半天得到的东东,还没实验过^_^

三句真言:

SET NAMES utf8;
SET CHARACTER SET utf8;
SET COLLATION_CONNECTION=’utf8_general_ci’;

建立conn时,query一下这三个语句,再进行别的操作。

解释:

有两个语句可以改变connection character set:
1. SET NAMES ‘charset_name’;
2. SET CHARACTER SET charset_name;

SET NAMES告诉服务器客户端将使用什么样的字符集来发送SQL命令,也同时指定服务器返回给客户端所使用的字符集。

SET NAMES ‘x’ 等效于:
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
(注: SET character_set_connection = x; 语句同时也自动指定了字符集x的默认collation为 collation_connection的值,但也可以用 SET NAMES ‘charset_name’ COLLATE ‘collation_name’来提定你想使用的collation。)

SET CHARACTER SET和SET NAMES作用相似,但它将连接的字符集和collation设置为默认数据库的字符集和collation。

SET CHARACTER SET x 等效于:
SET character_set_client = x;
SET character_set_results = x;
SET collation_connection = @@collation_database;
(注:SET collation_connection同时也会自动设置character_set_connection。)

如果不希望MySQL在返回结果时进行转换,可以使用SET character_set_results = NULL;语句

标签:

您可以对这篇文章发表一条评论,或者在您自己的网站中引用 (Trackback) 它

发表一条评论

所有标签:.net Ajax Java javascript Linux map MySQL RSS TD-SCDMA Ubuntu vim web Win7 乱码 基础知识 备份 奥运会 希望泉 性能 缓存 编程