【发布时间】:2019-11-22 13:17:44
【问题描述】:
我正在尝试使用 postgreSQL COPY 函数将 UTF 16 编码的 csv 插入表中。但是,在运行以下查询时:
COPY temp
FROM 'C:\folder\some_file.csv'
WITH (
DELIMITER E'\t',
FORMAT csv,
HEADER);
我收到以下错误:
ERROR: invalid byte sequence for encoding "UTF8": 0xff
CONTEXT: COPY temp, line 1
SQL state: 22021
当我运行相同的查询,但将编码设置 Encoding 'UTF-16' 或 Encoding 'UTF 16' 添加到 with 块时,我收到以下错误:
ERROR: argument to option "encoding" must be a valid encoding name
LINE 13: ENCODING 'UTF 16' );
^
SQL state: 22023
Character: 377
我查看了 postgres 文档以尝试找到正确的编码,但没有找到任何东西。这是因为复制功能确实支持 UTF 16 编码文件吗?我原以为这几乎肯定是可能的!
我在 windows 10 pro 上运行 postgres 12
任何帮助将不胜感激!
【问题讨论】:
标签: postgresql encoding character-encoding utf-16