首页 Soft PlugIn RAN乱 Dev开发 Info资料 English WAP 留言 登陆 注册
-
Posted by Yippee | 评论(2) | 引用(0) | 阅读6480次
MYSQL UTF8 UTF-8 GB2312 LATIN 乱码

MYSQL UTF8 UTF-8 GB2312 LATIN 乱码

MYSQL数据库中需要创建一些初始值,结果直接在MYSQL里面INSERT失败,最后觉得反正是用MYSQL导入SQL脚本方式运行,所以不如直接把SQL脚本存为UTF-8格式,导入后再页面显示正常。 www.shengfang.org

mysql -V www.shengfang.org
mysql  Ver 14.7 Distrib 4.1.10a, for redhat-linux-gnu (i686)

MySQL 4.1x之後的問題, www.shengfang.org
找了很久,才發現解決方法為
在mysql_connect的語法後加一句:
mysql_query("set NAMES 'utf8'"); 或
mysql_query("set NAMES 'big5'"); (Depends on 你的encoding)

CREATE TABLE `companys` ( www.shengfang.org
  `companyid` smallint(4) NOT NULL auto_increment,
  `companyname` varchar(40) character set utf8 collate utf8_unicode_ci NOT NULL default '',
  PRIMARY KEY  (`companyid`),
  UNIQUE KEY `companyname` (`companyname`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=28 ;

UTF8页面正常 是
MYSQL不正常: www.shengfang.org
+-----------+-------------+
| companyid | companyname |
+-----------+-------------+
|        28 | 鏄?        |
+-----------+-------------+

insert into companys(companyname) values('行政部');
mysql 正常      29 | 行政部
页面 А???

insert into companys(companyname) values(convert('行是部' using utf8 ));
mysql   30 | 行是部 www.shengfang.org
А???

insert into companys(companyname) values(convert('行部' using gb2312));
 31 | ????      ????


 /*公司机构表*/
CREATE TABLE companys(
  companyid  SMALLINT(4)  NOT NULL auto_increment,
  companyname varchar(40) NOT NULL,
  PRIMARY KEY  (companyid),
  UNIQUE KEY companyname(companyname)
)TYPE=MyISAM; www.shengfang.org

select convert(* using utf8) from companys;

在mysql中使用utf8编码,进行like查询时。如namelike'%c%'会将一些中文也搜索出来,虽然中文在里面显示时为乱码。这样会造成查询不精确。后查询mysql文档发现binary关键字。在like后加入binary即可实现精确的模糊查询。likebinary'%c%'
注:目前发现在like时使用c,e,a时会出现以上问题。因为mysql是用c语言写的。可能是utf8后编码的问题才会出现上述情况。还好解决了。希望能给有过同样问题的朋友一些帮助 MOONTOUCHER'S BLOG


字体:

Permanant URI永久地址 http://www.shengfang.org/blog/p/mysqlutf8luanma.php
Trackback URI引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1132723875

2005年11月23日13:31星期三  [Dev开发] 追踪此文的RSS
jonny_mo在 2009年3月21日16:07星期六 评论:
谢谢!顶!
Emotion

328487492在 2008年9月19日02:32星期五 评论:
[color=red][/color]http://2500dx.com/

称呼:    登陆   注册
   不注册,但记住我的信息
邮件:
(非必须)
评论: [UBB代码帮助]
粗体 斜体 下划线 链接 水平线 引用



验证码: 请输入你看见的数字
关闭UBB      提交时自动将内容复制到剪贴板

公告





统计信息
[Yippee]||[统计]||日志:2143
在线: 14||用户: 2635 [列表]
今日:592||到访:3654377
Rss:||评论:1668

最新日志

最新评论

友情链接

日历
342009 - 0734
   1234
567891011
12131415161718
19202122232425
262728293031 

最新引用
搜索

归档

杂项
Get RSS Feed (Version 2.0)
Get Atom Feed (Version 0.3)
编码:  UTF-8