我想使用psql"\copy"命令将数据从制表符分隔的文件拉入Postgres.我正在使用这个命令:

\copy cm_state from 'state.data' with delimiter '\t' null as ;

但我得到了这个警告(这个表实际上加载得很好):

WARNING:  nonstandard use of escape in a string literal
LINE 1: COPY cm_state FROM STDIN DELIMITER '\t' NULL AS ';'
HINT:  Use the escape string syntax for escapes, e.g., E'\r\n'.

如果"\t"不正确,如何指定选项卡?

推荐答案

使用E'\t'告诉postgresql其中可能有转义字符:

\copy cm_state from 'state.data' with delimiter E'\t' null as ';'

Postgresql相关问答推荐

Postgres SQL执行加入

PostgreSQL数据文件是否仅在判断点期间写入磁盘?

PostgreSQL按描述请求

如何使用postgr sql regex删除重复项和inc表记录

PostgreSQL:重新创建主键值以匹配记录计数

列不明确

将CSV文件复制到临时表

PostGresql :正则表达式 Select 其中只有一个正斜杠的行

Select 与输入数组完全相交的所有行?

Postgres 生成的列不是不可变的

Postgres 根据自己的估计 Select 一个更费时的查询计划

Psycopg2 在大型 Select 查询中耗尽内存

从 Postgres 字段中的多个值中进行 Select

在 PostgreSQL 中返回插入的行

Rails 迁移:PostgreSQL 上的 Bigint 似乎失败了?

是否可以在 Postgres 中存储一个 1 字节的数字?

如何使用 postgresql 中的存储过程将数据插入表中

如何将主键添加到视图?

Postgresql 中的 NOT EXISTS 子句

在同一台机器上创建多个 Postgres 实例