手机
当前位置:查字典教程网 >编程开发 >php教程 >mysq GBKl乱码
mysq GBKl乱码
摘要:我现在有一个sql文件,里面内容是gbk的。我现在显示全是乱码。就只是用mysql4.0.26能显示。用4.1以上的死活都显示不了。头大了。...

我现在有一个sql文件,里面内容是gbk的。我现在显示全是乱码。

就只是用mysql4.0.26能显示。

用4.1以上的死活都显示不了。头大了。望大家指点指点,感恩不尽。

我现在装了mysql5.0.22.

我把my.ini里的字符集都改成gbk了,用status命令显示,都是gbk.然后我用source命令导入sql文件,可是还不行。查询前我用了setnamesgbk,setnamesutf8,setnameslatin1.什么都显示乱码。

用mysql-uroot-ppassworddatabase<data.sql导入也一样不行。

sql文件头是这样的。

--MySQLdump10.10

--

--Host:localhostDatabase:system

--------------------------------------------------------

--Serverversion5.0.22-community-nt

/*!40101SET@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT*/;

/*!40101SET@OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS*/;

/*!40101SET@OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION*/;

/*!40101SETNAMESutf8*/;

/*!40103SET@OLD_TIME_ZONE=@@TIME_ZONE*/;

/*!40103SETTIME_ZONE='+00:00'*/;

/*!40014SET@OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS,UNIQUE_CHECKS=0*/;

/*!40014SET@OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,FOREIGN_KEY_CHECKS=0*/;

/*!40101SET@OLD_SQL_MODE=@@SQL_MODE,SQL_MODE='NO_AUTO_VALUE_ON_ZERO'*/;

/*

无语了。望各位指点。谢谢。

复制代码 代码如下:

完美解决方案:

1.不管你用什么方法,导出SQL文本文件,确保EDITPLUS打开看到的是中文。

2.将该SQL文件的语句改成4.1的,删除编码设定的语句,然后保存。

3.用命令行导入4.1数据库,记得,这个数据库的编码要设为GBK,建表的时候,会自动指定为GBK

附命令:

mysql-hlocalhost-uroot-p****database--default-character-set=gbk<database.sql

以后导出的时候,也要记得--default-character-set=gbk

写程序的时候,mysql询前,一定要SETNAMES!

以上是我长时间无数次失败和测试积累下来的经验。

【mysq GBKl乱码】相关文章:

PHP中使用curl入门教程

php返回相对时间(如:20分钟前,3天前)的方法

PHP获取当前日期和时间及格式化方法参数

PHP 中执行系统外部命令

一个用于MySQL的PHP XML类

PHP中的魔术方法总结和使用实例

桌面中心(四)数据显示

两种php调用Java对象的方法

phplot生成图片类用法详解

php.ini中的request_order推荐

上一篇: php类
精品推荐
分类导航