如何使用加载数据Infile插入多个表?

时间:2010-10-28 13:10:39

标签: mysql bulkinsert

我使用aa python程序向数据库插入许多新条目, 这些新条目分布在多个表中。

我正在使用加载数据infile加载文件,但此解决方案仅适用于一个表,我不想多次这样做。

我发现http://forge.mysql.com/worklog/task.php?id=875这个,但我并不完全 确定它是否已经实施。

3 个答案:

答案 0 :(得分:2)

尚不支持从本地文件加载数据以在多个表中插入新数据(v 5.1)

答案 1 :(得分:2)

我正在按照以下方式完成你要做的事情:

第1步:创建临时表(保存导入文件的所有字段)

第2步:LOAD DATA LOCAL INFILE - >进入临时表

第3步:INSERT INTO Table1 fieldlist )SELECT FROM TempTable匹配的字段列表).. 。必要时包括JOINS,WHERE和ON PRIMARY KEY UPDATE

第4步:使用第二个表插入查询重复步骤3,依此类推。

使用此方法我目前正在导入每个22MB数据文件,并将它们解析为多个表(6个表,包括2个审计/更改表)

在不知道您的表结构和数据文件结构的情况下,很难给出更详细的解释,但我希望这有助于您入门

答案 2 :(得分:0)

我认为LOAD DATA不能这样做,但为什么不在导入后复制表格?