繁体   English   中英

PostgreSQL COPY FROM 命令帮助

[英]PostgreSQL COPY FROM Command Help

我有 CSV 文件,它非常大(几百 MB),我试图将其导入 Postgres 表,出现问题时出现一些主键违规(CSV 文件中的重复记录)

如果是这样,我可以手动过滤掉这些记录,但这些文件是由每小时生成此类数据的程序生成的。 我的脚本必须自动将其导入数据库。

我的问题是:有什么办法可以在 COPY 命令或 Postgres 中设置一个标志,以便它可以跳过重复记录并继续将文件导入表?

我的想法是通过两种方式解决这个问题:

  1. 使用可以帮助创建重复行的“异常报告”的实用程序,例如在 COPY 过程中的这个
  2. 通过首先将数据加载到临时表中来更改您的工作流程,对其重复进行按摩(可能与您的目标表连接并用 dup 标志标记临时表中存在的所有记录),然后仅导入丢失的记录并将 dups 发送到异常表。

我个人更喜欢第二种方法,但这取决于您的具体工作流程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM