【问题标题】:How to import a large .csv file into sqlite - memory issues with sqlite Manager如何将大型 .csv 文件导入 sqlite - sqlite Manager 的内存问题
【发布时间】:2013-05-31 09:01:02
【问题描述】:

我在尝试将 2GB .csv 文件导入 sqlite 时遇到一些问题。 .csv 文件有大量列,我尝试使用 sqlite 管理器,因为这提供了一种在 sqlite 中创建具有正确列名的表的方法。

但是,当我尝试在 sqlite 管理器中导入 .csv 文件时,由于某种原因,我遇到了内存问题,并且导入失败。我收到“致命错误:内存不足”。

有什么办法可以解决这个问题吗?我曾考虑将文件拆分成块,但不知道如何在不必打开文件本身并遇到内存问题的情况下执行此操作。

谢谢,

【问题讨论】:

    标签: sql sqlite csv


    【解决方案1】:

    您似乎在 sqlite-manager 中遇到了一个已知错误 - 请参阅项目问题跟踪器中的 issue 414:out of memory error when trying to import a large (268MB) CSV file

    如果您使用 sqlite-manager 导入失败仍然给您一个具有正确列名的空表,我会在 sqlite shell 中打开该数据库文件并使用内置的.import 函数来获取您的数据.

    如果这不是您的选择,或者如果您决定使用 sqlite-manager 解决这个问题,那么您拆分 CSV 文件的想法是正确的。

    根据您的平台,您有很多用于拆分文件的选项。有很多 Windows 免费软件(如 GSplit),您应该在几乎任何类 Unix 机器上找到 split 实用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-31
      • 1970-01-01
      • 1970-01-01
      • 2011-04-16
      • 2020-02-17
      • 1970-01-01
      • 2013-05-16
      • 2013-02-03
      相关资源
      最近更新 更多