Postgresql PotgreSQL-错误:编码的字节序列无效;UTF8";:0xeb 0x6e 0x74

Postgresql PotgreSQL-错误:编码的字节序列无效;UTF8";:0xeb 0x6e 0x74,postgresql,encoding,character-encoding,pgadmin-4,Postgresql,Encoding,Character Encoding,Pgadmin 4,我正在处理PostgreSQL,并在从批处理脚本(命令行)执行insert语句时发现以下错误 错误:编码“UTF8”的字节序列无效:0xeb 0x6e 0x74 我已经通过showclient\u encoding命令检查了客户机编码,它显示的是UTF-8 还使用命令检查了数据库属性 从pg_数据库中选择*,其中datname=' 在输出中: datcollate=English\u United States.1252 datctype=English_United States.1252 如

我正在处理PostgreSQL,并在从批处理脚本(命令行)执行insert语句时发现以下错误

错误:编码“UTF8”的字节序列无效:0xeb 0x6e 0x74

我已经通过
showclient\u encoding
命令检查了客户机编码,它显示的是UTF-8

还使用命令检查了数据库属性

从pg_数据库中选择*,其中datname='

在输出中

datcollate=English\u United States.1252
datctype=English_United States.1252


如何解决此问题?

如果错误消息引用的三个字节应该编码字符串“ënt”,您可以通过设置正确的客户端编码来解决问题,例如:

SET client_encoding = WIN1252;

如果错误消息引用的三个字节应该编码字符串“ënt”,您可以通过设置正确的客户端编码来解决问题,例如:

SET client_encoding = WIN1252;

这是因为列的名称中有特殊字符。
重命名和删除特殊字符更改win-1252的编码并将起作用。

发生这种情况是因为列的名称中有特殊字符。
重命名和删除特殊字符更改win-1252的编码即可。

谢谢您的回复。这也没用。实际上,当我从查询浏览器(pgAdmin4)执行insert查询时,它成功地执行了,但当我从批处理脚本(命令行)执行相同的命令时,它给出了错误。那么我需要在批处理脚本中设置任何内容吗?Word:*例如patiënt**是的,您必须在批处理脚本中包含
SET
语句。根据您使用的客户端的不同,可能有更优雅的方式来设置客户端编码,但是
SET
语句是最简单的方式。谢谢您的回复。这也没用。实际上,当我从查询浏览器(pgAdmin4)执行insert查询时,它成功地执行了,但当我从批处理脚本(命令行)执行相同的命令时,它给出了错误。那么我需要在批处理脚本中设置任何内容吗?Word:*例如patiënt**是的,您必须在批处理脚本中包含
SET
语句。根据您使用的客户机的不同,可能有更优雅的方式来设置客户机编码,但是
SET
语句是最简单的方式。