返回   青蛙论坛 » IT论坛 » 操作系统类
用户名
密码
帮助 会员 日历 标记论坛为已读

回复
 
主题工具 显示模式
旧 03-22-2006, 22:01   #1
chyangwa
蝌蚪-小毛驴
 
chyangwa的头像
 
注册日期: Nov 2000
来自: 上海
帖子: 8,285
精华: 6
MySQL5使用中字符集问题

网页编码是gb2312(如果网页编码是utf-8,php部分可以改成相应的)
【1】命令行,就是Mysql.exe
修改my.ini,
[mysql]
default-character-set=gb2312
(转贴请注明作者)
【2】php->mysql
1 可以修改my.ini的情况下,在[mysqld]添加或修改
init-connect='SET NAMES gb2312'
2 不能修改my.ini
可以在php connect mysql后执行mysql_query('SET NAMES gb2312;');

utf-8编码的文件要比gb2312大,如果网页只有简体中文,只面对国内,没必要转成utf-8
如果网站是多语言,可以考虑utf-8

mysql 4.1版本之后引入多字符编码,我的理解是不论数据库里采用那种编码,只要存入和取出的时候设置的编码相同就不会出现乱码。mysql增加了转码,就是你存入utf-8编码,取出的时候只要告诉mysql你要得到那种编码它就返回正确的结果
如果default-character-set=gb2312 那么就不能存utf8编码的字符,但它的好处是省空间,对数据量大的有用
默认编码是latin1编码,跟gb2312类似,无法插入utf-8编码字符,会提示Data too long for column 'xx' at row
所以网页要采用utf-8编码,数据库也要采用,utf-8编码的网页提交的数据也是utf-8的。
采用latin1或者gb2312,gbk的,只要告诉mysql它你想要的编码就能得到正果
语句就是
SET NAMES xxx;
SET CHARACTER_SET xxx;
chyangwa离线中   回复时引用此帖
回复


主题工具
显示模式

发帖规则
不可以发表新主题
不可以回复主题
不可以上传附件
不可以编辑您的帖子

vB 代码开启
[IMG]代码开启
HTML代码关闭
论坛跳转



所有的时间均为北京时间。 现在的时间是 16:47.


NewvBB Core 1.1 Final - vBulletin v3.0.3
中文化与插件制作 NewVBB.com™ 2024。
友情连接        
摩托车.上海.中国        
         
         
         
         
         

上海市通信管理局
沪ICP备010502
沪ICP备05000578号