开发者社区> 问答> 正文

如何使用 COPY 命令导入数据

用户可以直接使用\COPY命令,将本地的文本文件数据导入云数据库 HybridDB for PostgreSQL。但要求用户本地的文本文件是格式化的,如通过逗号、分号或特有符号作为分割符号的文件。
[backcolor=transparent]注意:


  • 由于\COPY命令需要通过 Master 节点进行串行数据写入处理,因此无法实现并行写入大批量数据。如果要进行大量数据的并行写入,请使用基于 OSS 的数据导入方式。

  • \COPY命令是 psql 的操作指令,如果您使用的不是\COPY,而是数据库指令COPY,则需要注意只支持 STDIN,不支持 file,因为“根用户”并没有 superuser 权限,不可以进行 file 文件操作。

\COPY操作命令参考如下: \COPY table [(column [, ...])] FROM {'file' | STDIN}
     [ [WITH]
       [OIDS]
       [HEADER]
       [DELIMITER [ AS ] 'delimiter']
       [NULL [ AS ] 'null string']
       [ESCAPE [ AS ] 'escape' | 'OFF']
       [NEWLINE [ AS ] 'LF' | 'CR' | 'CRLF']
       [CSV [QUOTE [ AS ] 'quote']
            [FORCE NOT NULL column [, ...]]
       [FILL MISSING FIELDS]
       [[LOG ERRORS [INTO error_table] [KEEP]
       SEGMENT REJECT LIMIT count [ROWS | PERCENT] ]
\COPY {table [(column [, ...])] | (query)} TO {'file' | STDOUT}
      [ [WITH]
        [OIDS]
        [HEADER]
        [DELIMITER [ AS ] 'delimiter']
        [NULL [ AS ] 'null string']
        [ESCAPE [ AS ] 'escape' | 'OFF']
        [CSV [QUOTE [ AS ] 'quote']
             [FORCE QUOTE column [, ...]] ]
      [IGNORE EXTERNAL PARTITIONS ]


[backcolor=transparent]注意:

  • 云数据库 HybridDB for PostgreSQL 还支持用户使用 JDBC 执行 COPY 语句,JDBC 中封装了 CopyIn 方法,详细用法请参见文档“Interface CopyIn”。

  • COPY 命令使用方法请参见文档“COPY”。

展开
收起
云栖大讲堂 2017-11-01 10:58:41 1974 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
大批量处理excel文件到ODPS中方案 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载