我有这个数据在一个XLS文件。XLS文件是一个混乱的大量数据,我不需要。我会清理文件,我可以重新安排它。
我有这样的东西:
Level - Code - Description
1 A 'foo foo'
2 12331 'bar bar'
3 13123 'bla bla'
4 21321 'plim bar'
5 12111 'foo plim'
5 12111 'plim bla'
5 12111 'bla plim'
1 B 'bla bar'
n ... ...
- 级别**定义层次结构位置,例如1表示顶层层次结构。5表示最低层。
我将使用邻接列表模型来存储这些信息,所以我相信我将不得不这样存储它:
id - description - parent_id
1 'foo foo' NULL
2 'bar bar' 1
3 'bla bla' 2
4 'plim bar' 3
5 'foo plim' 4
6 'plim bla' 4
7 'bla plim' 4
8 'bla bar' NULL
n ... ...
什么是最好的(最快,最简单)方法来插入这样的信息?我应该转换为CSV吗?我应该如何格式化XLS文件,以便我可以通过保持层次结构来插入这些信息?
XLS文件中有9000行,我很乐意避免一行一行地这样做!
- 要成功导入此数据,应考虑哪些方法?**
- 更新:**我有这个mysqlworkbench软件...我在Ubuntu上,这里都是开源的。
先谢谢你了。
2条答案
按热度按时间m528fe3b1#
使用
LOAD
命令,如果可能的话,使用类似csv的数据。下面是一个例子:
其中
IGNORE 1 LINES
表示将忽略数据文件中的列标题,(col1, col2,..., coln)
是要使用的数据库列。你有很多其他的选择(参见http://dev.mysql.com/doc/refman/5.1/en/load-data.html),对于大数据负载,
LOAD
应该比INSERT
快20倍(根据http://dev.mysql.com/doc/refman/5.1/en/insert-speed.html)。f0ofjuux2#
你可以使用Navicat来做导入,免费版本就可以了。