你能告诉我如何有效地让用户在mysql中导入他们的数据吗? 问题是数据一般需要插入到几个相关的表中。 导入 10s 或 100s 千行的导入 .csv 需要很多时间并且会为数据库产生很大的负载。现在我解析 .csv,生成插入(如果我们需要在相关表中设置属性,可能是几个插入)并在数据库中循环插入数据。 你是怎么做到这些事的? 也许要定期在服务器上和服务器上加载文件以少量插入数据? 所有的想法都表示赞赏。 谢谢。
最佳答案
如果您真的需要插入所有这些数据,我认为您没有太多选择。
我建议使用一个 INSERT 插入多行以减少应用程序和数据库之间的往返次数:
INSERT INTO mytable (....)
VALUES (....),
(....);
如果您是第一次插入数据,您可以在插入所有数据后创建索引,但是当然如果您是在线执行此操作(即您的插入过程与其他操作同时执行),那么你不能这样做,因为索引在所有进程之间共享。
关于mysql - 有效地将 .csv 导入 mysql 到几个相关表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4780010/