【问题标题】:Properly formatting CSV with hstore data for Postgres import使用 hstore 数据正确格式化 CSV 以进行 Postgres 导入
【发布时间】:2016-01-14 08:31:20
【问题描述】:

我有一个看起来像这样的 Postgres 表。

       Column    |       Type        |       Modifiers        
   --------------+-------------------+------------------------
    id           | bigint            | not null
    tags         | hstore            | not null

我想将 CSV 文件中的数据导入此表。作为第一个测试,我导入了这一行 CSV

1234,""key"=>"value""

使用

COPY my_table FROM 'my_file.csv' DELIMITER ',' CSV;

效果很好。

然而,在我要导入的 hstore 数据中,键和值可以是任何字符串,可能包含引号或任何其他外来字符。我应该如何格式化我的 CSV 文件以允许导入键值对包含任意字符串的 hstore 列?

任何帮助将不胜感激。

我正在使用 Postgres 9.5。

【问题讨论】:

    标签: postgresql csv hstore


    【解决方案1】:

    您可以使用一些“稀有”字符作为分隔符,例如

    COPY my_table FROM 'my_file.csv' DELIMITER E'\x02' CSV;

    您的值中是否期望 ASCII chr(2)?..

    【讨论】:

    • 感谢您的回复,但我不想对输入数据做任何假设,因此 "arbitrary strings".
    • 啊。我认为这将是一次导入,因此您可以检查之前是否有任何 chr(2)...
    猜你喜欢
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    • 2022-01-15
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    • 1970-01-01
    相关资源
    最近更新 更多