【问题标题】:Postgres copy of file to table failingPostgres 将文件复制到表失败
【发布时间】:2016-12-05 12:37:12
【问题描述】:

我有源文件,它没有双引号。 (查看文件中的单行)

head -1 测试 123|ABC|美国|458764

我想将这些记录复制到 Postgres 表中说“测试”

测试表定义如下

\d test.txt 数字 整数 名称字符变化 国家性格不同 PIN 整数

虽然将此数据复制到 Postgres 复制失败,因为文件中的字符数据列没有“”。

\COPY test FROM tmp/test.txt DELIMITER '|';

如何确保 COPY 正常工作,即使源文件中的数据没有字符类型的“”。

【问题讨论】:

    标签: postgresql greenplum


    【解决方案1】:

    事实并非如此。看例子:

    b=# create table t3 (a int, b character varying, c character varying, d int);
    CREATE TABLE
    b=# copy t3 from '/var/lib/postgresql/test' DELIMITER '|';
    COPY 1
    b=# \! cat /var/lib/postgresql/test
    123|ABC|US|458764
    

    如您所见,不需要双引号。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-30
      • 2013-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-08
      • 1970-01-01
      相关资源
      最近更新 更多