【问题标题】:Importing CSV using pgfutter to postgresql使用 pgfutter 将 CSV 导入到 postgresql
【发布时间】:2019-03-06 03:52:18
【问题描述】:

我正在尝试导入一个包含 17000 行和列的 csv 文件,但遇到了一些问题。除了这个文件,我可以将任何其他 csv 文件导入 postgresql。我尝试将文件减少到 10 行和 17000 列,但问题仍然存在,这意味着文件的大小不是问题。列名只是从 0 到 17000 的数字。我感觉它的列数可能是问题所在。

从here下载。

mac终端使用的命令:

$chmod +x pgfutter_darwin_amd64.dms

$./pgfutter_darwin_amd64 --host "127.0.0.1" --port "5432" --db "movie_lens" --schema "public" --table "movies2" --user "postgres" --pw "XXXXX" csv movies_cos_sim.csv

输入命令后,输出只是所有列名的列表,但在 postgresql 中没有任何显示。

任何想法我应该做什么?还有其他方法可以做到这一点吗?

【问题讨论】:

  • 你好!欢迎来到堆栈溢出 :) 你为什么使用 python 和 python-3.x 标签?这似乎与python完全无关
  • 已修复,谢谢!最终我将使用 postgresql 和 python 所以想也许有人会建议另一种方法而不需要 pgfutter
  • 我明白了!只是您下一个问题的提示-我们无法知道,并且“将 postgresql 与 python 一起使用的最佳方法是什么”与“如何使用 pgfutter 将 csv 导入 postgresql”是一个非常不同的问题,所以他们可能属于不同的问题:)
  • @Mido2009 找到解决方案了吗???
  • @Arnab 我走了另一条路。我的巨大矩阵是我拥有的所有电影之间的相似度得分。每次用户选择一部电影时,我都会计算它,而不是计算它并存储它。不确定这是否对您的情况有所帮助。

标签: postgresql csv import-csv


【解决方案1】:

不幸的是 pg_futter 在很多情况下并没有真正显示错误。例如,如果 db 的用户名错误,它将直接退出而不输出错误。退出代码 0 也是。您只能发现存在错误,因为它完成得如此之快。当然,因为数据库中没有数据:)

使用 pg_futter,这是一个反复试验的问题。

我遇到的一些事情:

  • 数据库用户/pass/dbname/host 错误
  • 某些文件只有在使用 unix2dos 将其行结尾转换为 Windows 后才能工作(即使我在 Linux 上运行所有东西)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-23
    相关资源
    最近更新 更多