当前位置:首页 > 系统运维 > 正文内容

MySQL编码问题的实际操作经验浅析

a8116255316年前 (2010-06-11)系统运维13

我们今天要和大家一起分享的是关于MySQL编码问题的实际操作经验总结,我在一些网站上看见过一些关于MySQL编码问题的实际操作方案,但是可行性都特别小,所以今天拿出自己的经验,望大家能有所收获。

MySQL(和PHP搭配之更佳组合)使用4.1以上版本,管他是什么字符集,一律使用默认。不用去设置MySQL(和PHP搭配之更佳组合)。

然后举个使用GB2312和UTF-8的例子。

好,你只要保证你的写着INSERT SQL语句的PHP文件编码为GB2312,恭喜你,你使用写着SELECT SQL语句的GB2312编码的PHP文件读取出来的数据也是GB2312的。

同理,只要你插入数据库的PHP文件是UTF-8编码,那么你录入的就是UTF-8的,读取出来同样使用MySQL编码为UTF-8的读取。

如果我录入为GB2312,显示要使用UTF-8怎么办

如果你的所有PHP文件为UTF-8编码,那么你在INSERT的时候,就必须使用iconv进行编码转换,将str转为GB2312入库,读取也一样,使用iconv转为UTF-8显示。

你的前端页面使用什么编码,那么你那些字符串已经被该种编码编过了,所以,尽管入库,他的机器码肯定就是那样的,不管存放在哪里,不管MySQL(和PHP搭配之更佳组合)指定为何种编码,他在录入数据的时候,并不会对你的数据进行转换。只要保证你的前端录入使用UTF-8,那么你读取的也是UTF-8。

为什么使用PHPMYADMIN导入总是有问题呢?

我没有研究过PHPMYADMIN的工作原理,但是他的PHP文件都是UTF-8编码的,也就是这样导入数据都是UTF-8的,你采用GB2312的PHP文件来读取,当然一堆乱。

解决办法我猜有三种:

读取的时候,使用SET NAME将其MySQL编码转换,不知道可行不,

读取后使用iconv将其转为GB2312,

不用PHPMYADMIN导入,自己写个GB2312的PHP脚本导入即可。总之一句话,你录入的时候采用什么编码,那么你读取的时候他就是什么编码。你想把这种编码显示成另外一种编码,那么你需要使用iconv或者mbstring将其进行MySQL编码转换。

以上仅为个人实际经验,没时间研究理论。欢迎大家探讨或者有错误请指正。

上述的相关内容就是对关于MySQL编码问题的经验总结的描述,IT技术网itjs.cn整理分享给学习MySQL的朋友,希望大家喜欢这样的Mysql文章或资料。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://2345hao.cn/blog/index.php/post/21096.html

分享给朋友:

“MySQL编码问题的实际操作经验浅析” 的相关文章

windows 7系统开机提示press any key to restart的故障分析及解

windows 7系统开机提示press any key to restart的故障分析及解

Windows 7 64位系统开机后提示"press any key to restart",无法进入系统了,具体现象如下所示: 故障分析: 故障的主要原因还是硬盘的问题,可以先检查是不是接触不良或坏了,进行修复或更换即可。 解决方法: 1、开机按F8不动到高级选项出现在松手,选“...

windows 7查看电脑近期使用情况确定有没有被他人使用

windows 7查看电脑近期使用情况确定有没有被他人使用

我一个朋友最近装装了Windows 7,他总感觉有人用了他的电脑,但是一直不确定,他想知道有没有人动用他的电脑,问我有没有办法 我说设置一下就行了: 启动Windows 7,在搜索栏中输入编辑组,马上就搜索到了编辑组策略,点击即可启动程序编辑组策略。依次展开组策略左侧树形列表的计算机配置/管理模...

windows 7系统开机后出现黑屏提示Windows无法启动

windows 7系统开机后出现黑屏提示Windows无法启动

一些用户的Windows 7系统开机后出现黑屏,代码为 Windows无法启动: WindowsSystem32ConfigSystem”。这个问题该如何修复呢?现在小编就给大家分析一下吧。 其实这个代码的意思是引导文件丢失了,引导文件(NTLDR)一般存放于C盘根目录下,是一个具有隐藏和只读属性...

ubuntu14.04打开个几个应用窗口最小化后怎么切换呢?

ubuntu14.04打开个几个应用窗口最小化后怎么切换呢?

ubuntu14.04应用窗口列表在哪里?在ubuntu下打开个几个应用窗口最小化后怎么切换呢,应用窗口列表在哪里呢? 1、多打开几个chrome浏览器窗口。 2、然后都做最小化处理。 3、现在我们在桌面左边的面板上找到"左右两边有小白点"的chrome浏览器应用图标,这就是chr...

windows 7系统下Windows服务被流氓软件注册怎么办?Windows服务

windows 7系统下Windows服务被流氓软件注册怎么办?Windows服务

解决方法: 其实处理这些使用流氓软件,需要将相关的.exe文件删除,使它不能再运行,或者直接清除这个服务本身,使计算机重启的时候,它不会再启动。比如Hijackthis扫描,在扫描日志中,一般会把非Windows系统的服务以023的方式列出来,如下面这段: O23 - ...

windows7系统下让所有文件夹都使用同一种视图的方法

windows7系统下让所有文件夹都使用同一种视图的方法

Windows 7系统可以对每个文件夹进行个性化视图设置,可以根据自己的个人喜好和实际需要更改文件或文件夹图标的大小,或者让文件或文件夹以列表、平铺等方式显示。但是,假如你对N个文件夹视图进行了风格各异的个性设置,现在又想让所有文件夹都使用同一种视图怎么办呢 手工一个一个修改,你OUT了,非累得手抽...