【发布时间】:2019-10-05 09:46:42
【问题描述】:
我正在尝试从 PostgreSQL 数据库中导出/导入一组表。
我在脚本中使用 psql 的 copy from 和 stdin。我读过数据(以前使用copy to 和stdout 生成)可以使用命令转义\. 读取和分隔。
我没有从文档中清楚地了解到,如果 \. 出现在以前导出的数据中会发生什么。
特别是documentation(我的重点)的这一部分对此不是很清楚。
对于
\copy ... from stdin,数据行从相同的源读取 发出命令,继续直到\.被读取或流到达 EOF。此选项对于在 SQL 中内联填充表很有用 脚本文件。对于\copy ... to stdout,输出发送到同一个地方 作为 psql 命令输出,并且 COPY count 命令状态不是 打印(因为它可能与数据行混淆)。读/写 psql 的标准输入或输出与当前命令无关 source 或 \o 选项,从 pstdin 或 pstdout 写入。
数据中出现的\. 能否/必须以某种方式转义?
我目前使用utf8 编码text 格式进行导出/导入。
【问题讨论】:
标签: postgresql psql