1

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

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

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

谢谢,

4

1 回答 1

0

看起来您在 sqlite-manager 中遇到了一个已知错误 - 请参阅问题 414:尝试在项目的问题跟踪器中导入大型 (268MB) CSV 文件时出现内存不足错误。

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

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

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

于 2013-05-31T21:34:08.963 回答