gpt4 book ai didi

从命令行执行查询时出现 PostgreSQL 编码问题

转载 作者:行者123 更新时间:2023-11-29 11:57:15 32 4
gpt4 key购买 nike

我正在尝试执行存储在文件中的 SQL 查询。我正在使用以下命令执行:

psql -d DB_NAME -a -f QUERY_NAME.sql

我在 SQL 文件中有一些非英文文本,例如 - સુરત

当执行查询时,数据库中的文本看起来像 - à ª¸à «Âà ª°à ª¤

如何从命令行执行查询以使其正确运行?

最佳答案

确保 client_encoding匹配你的文件的编码。检查您的系统区域设置。然后为 psql 使用匹配的命令行参数。 Quoting the manual here:

If at least one of standard input or standard output are a terminal, then psql sets the client encoding to "auto", which will detect the appropriate client encoding from the locale settings (LC_CTYPE environment variable on Unix systems). If this doesn't work out as expected, the client encoding can be overridden using the environment variable PGCLIENTENCODING.

Linux shell 示例:

env PGCLIENTENCODING='WIN1258' psql DB_NAME -a -f QUERY_NAME.sql

List of available encodings in the manual.

关于从命令行执行查询时出现 PostgreSQL 编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19290750/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com