去年的投资统计月报数据量庞大,原始表格是xls格式(还是EXECL2003的),单个sheet最大只能放几万行,但数据总量有10万行以上,于是只能存成两个sheet。EXECL2010格式倒是单个sheet可以放得下,可是居然不能将数据完整的从一个sheet复制粘贴到另一个sheet(可能是因为行数太多)。正好想学习一下execl数据导入MySQL数据库的方法,于是开始尝试。
一开始使用的是MySQL for Execl功能,在安装MySQL的时候安装此控件,在Excel的数据菜单下可以直接调用,可以按照数据的前若干行判断数据库类型,但是比较鸡肋,因为时常判断不准,或者设置字段长度太短,导不完就出错。一气之下换成Navicate 10工具导入数据。
1、用Navicat 10打开要导入数据的数据库
2、点击导入向导,选择导入文件格式
3、选择要导入的数据文件,如果有多个工作簿,可选择目标工作簿
4、填写导入的数据行数,日期数字格式
5、选择目标表,可填写表名,如该表名数据库中不存在,则自动生成一个新表
6、选择生成的新表的各字段数据类型,目标栏位名称为数据表第一行。类型支持MySQL的各种常见类型(默认为varchar,长度255)。注意:最好先检查excel原始数据,若其中对某列的格式已经做了定义(如定义为日期格式),则此处要进行相应匹配(也定义为date),否则导入后该列数据将会是错数。
7、选择数据导入模式
8、按开始键,导入数据
9、导出结果为
导入MySQL的数据可以通过导出向导再次导出为Excel文件。