原来用的数据库是access的,现在由于需要想把整个access数据库导入到mysql里面。
只能导数据,不能导表结构。
1.
先将ACCESS数据导出生成一个带格式的文本文件,包括有列分隔符和行尾分隔符,在WINDOWS系统下,行尾分隔符是\r\n,
而列分隔符在你导出数据生成相关文本文件时可以自定义, 然后用LOAD DATA IN FILE命令行导入相关数据,
但有一点请切记,在执行LOAD DATA IN FILE命令行之前, 你要首先执行set names 'gbk' 或者set
names 'gb2312', 还有一个办法就是在my.ini 或者my.cnf配置文件中加入一行:
[mysqld]
default-character-set=gb2312 或者 gbk
然后重新启动mysql.
2. 将数据库建成支持UTF-8,然后将你导出的文本文件另存为UTF-8编码, 最后用mysqlimport工具或者LOAD DATA
IN FILE命令导入数据即可,这样的话,你的数据编码就是UTF-8的.
我建议你用第二种方法,这是最好的解决方案.
具体操作步骤如下:
第一步:打开access数据库选择需要导出的表,在菜单中选择导出,文件类型选择.txt
.csv这种,在完成时填好文件名.csv,其它的内容默认就可以了。
第二步:将.csv文件导入到MYSQL中。
使用mysql的命令行或者在phpmyadmin用SQL句:
use 你的库名//选择库名
create 你的表名
//表结构应该跟原导出数据表一样
LOAD DATA LOCAL INFILE
'd:/www_4000/qq.csv' INTO TABLE `ac_haomaname` FIELDS TERMINATED BY
',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'
注释:
将d:/www_4000/qq.csv这个文件导入到mysql中的ac_haomaname表中。
FIELDS TERMINATED BY
',' 字段分隔
LINES TERMINATED BY
'\r\n'; 换行符
注意:
默认导出的CSV是ANSI的,如果说你使用的mysql数据库是GBK 或者是GB2312的话默认就是OK
(我没有测试过不过同理)
数据库默认编码是utf8的话需要把导出的CSV文件另存为utf-8文件这样再导可以避免乱码(已测)
有什么问题留言^_^
注意,版本号不对时,经常导入出错