使用PHP和mysql将大数据导入到具有外键的多个表

时间:2018-05-30 13:04:38

标签: php mysql zend-framework doctrine-orm

  

将大数据插入多个表的更好方法是什么?   带有外键的CSV中的数据库?

我尝试将大型csv文件导入多个表 我使用正常的Mysql查询循环csv数据,但它非常慢。 然后我试着加载数据' method.But它只能将数据插入到具有相同列顺序的单个表中。

但是,它不起作用,因为我需要将数据插入多个表并需要使用最后一个

  

插入一个表的id以加入另一个表。

有人可以建议更好的方法将数据上传到多个表吗?

在这里,我使用Zend Framework和Doctrine来处理数据库操作。 但是,根据我的理解,Doctrain比正常的MySQL查询花费的时间更多,这就是我使用直接MySQL查询的原因。

1 个答案:

答案 0 :(得分:1)

您可以从下面的方法一次性导入数百万条记录中的大型文件,请使用mysql Load DATA

代表前 -

LOAD DATA LOCAL INFILE  
'/PATH_TO_YOUR_CSV/YOUR_CSV.csv'
INTO TABLE MY_TABLE
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"'
LINES TERMINATED BY '\n';

请记住您的表结构和您的csv文件结构(没有列)应该是相同的