我正在读取sql脚本中的csv文件,并将其数据复制到postgre sql表中.代码行如下:

\copy participants_2013 from 'C:/Users/Acrotrend/Desktop/mip_sahil/mip/reelportdata/Participating_Individual_Extract_Report_MIPJunior_2013_160414135957.Csv' with CSV delimiter ',' quote '"' HEADER;

我得到了以下错误:编码"WIN1252"中字节序列为0x9d的字符在编码"UTF8"中没有等效字符.

有人能帮我解决这个问题的原因吗?我该如何解决?

推荐答案

问题是0x9D在WIN1252中不是有效的字节值.

问题可能是您正在导入一个UTF-8文件,而postgresql默认为Windows-1252(我相信这是许多Windows系统的默认设置).

在使用chcp运行脚本之前,需要在windows命令行上更改字符集.或者在postgresql中,您可以:

SET CLIENT_ENCODING TO 'utf8';

在导入文件之前.

Postgresql相关问答推荐

如何在查询空字段时设置pgtype.comb为默认值?

Postgres-pgloader-默认情况下,在PostgreSQL中将列名转换为小写

为MCV扩展统计设置统计目标

返回行值和行计数的总和

带有附加组的时间刻度 interpolated_average

从左连接更新 Postgres

Postgresql - 在 Big Data 库中使用数组的性能

从 Postgres 数据库中删除所有函数

将 SELECT 结果作为参数传递给 postgreSQL 函数

错误:CASE types character varying and numeric cannot be matched

如何在 psql 控制台中打印当前工作目录?

返回 array_agg() 中的第一个元素

如何在 postgres 中使用 json_populate_recordset 解析 json

如何为 Postgres psql 设置时区?

如何使 array_agg() 像 mySQL 中的 group_concat() 一样工作

PostgreSQL 中是否有类似 zip() 函数的东西,它结合了两个数组?

我应该在 Django DATABASE ENGINE 中使用哪个 Postgres 值?

从 5 分钟前的表中获取行

如何从我的 postgresql 查询中获取最小值、中值和最大值?

Postgresql 用随机值更新每一行