您的位置:首页 > 数据库 > MySQL

MySQL 数据库 5.0 以前版本,移植5.5 以后版本 和 字符集乱码解决方案

2015-05-25 00:36 411 查看
MySQL 数据库 5.0 以前版本,移植5.5 以后版本 和 字符集乱码解决方案
 
准备工作
1.在你的机器上同时安装上 MySQL 5.0 和 MySQL 5.5 数据库
2.考虑问题的方向,因为SQL语句是与平台无关的,所以采用导出SQL语句,才能保证数据移植的完整性。
 
移植数据方法:
1.使用mysqldump工具将数据库表和数据库导出
mysqldump - uroot -p --default-character-set=gb2312 [数据库名][表名] > [输出文件路径]
例子:mysqldump - uroot -p --default-character-set=gb2312 cs cs > d:\cs.sql
这样完整的一张表包含数据,就导出了。
2.在新的数据库中创建数据库,然后将导出的数据导入新的数据库
A.控制台导入 注意:只能用于数据库导入
mysql -uroot -p [数据库名字] < D:\cs.sql;
B.查询分析器导入 注意:既能导入数据库,又能导入数据表
use [database];
source [sql语句的路径]
例子:
use cs;
source D:\cs.sql;
你也可以选择打开SQL,然后复制粘贴到查询分析器中,然后执行SQL语句。
 
数据库乱码问题:
当你的数据库使用了,不合适的字符集,就会产生???这样的字符,那么我如何还原???呢,就是在导出SQL语句的时候,将字符集设置成和数据库一样的字符集,这样导出来的数据,就可以正确显示了。
正确显示了,我们就很高兴了,新的数据库的字符集是GB2312,然后我们将SQL语句重新再新的数据库执行一下。
 
插入大量数据很方便的方法:
将CVS文件导入数据库:student.txt 保存的是CVS文件。
导入txt语法:
Load Data InFile '文件路径' Into Table `表名` fields terminated by ',' lines terminated by '\r\n';
例子:
Load Data InFile 'D:/student.txt' Into Table `student` fields terminated by ',' lines terminated by '\r\n';
导出txt语法:
SELECT * INTO OUTFILE 'e:\student.txt' 
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY ''''  
LINES TERMINATED BY '\r'  
FROM 表名;
例子:
SELECT * 
INTO OUTFILE 'e:\student.txt'  
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY ''''  
LINES TERMINATED BY '\r\n'  
FROM student;  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐