我最近开始使用PostgreSQL来创建/更新现有的sql数据库。在这个i wave中相当新,遇到了在创建新数据库时选择正确的编码类型的问题。 UTF8(默认一个)对我不起作用,因为要包含的数据是各种语言(英语,中文,日语,俄罗斯等),还包括符号字符。
问题:有人可以建议正确的数据库编码类型以满足我的需求。
非常感谢任何帮助。
答案 0 :(得分:2)
这里有四种不同的编码设置:
数据库的服务器端编码
PostgreSQL客户端向PostgreSQL服务器发布的client_encoding
。 PostgreSQL服务器假定来自客户端的文本位于client_encoding
并将其转换为服务器编码。
操作系统默认编码。这是client_encoding
设置的默认psql
,如果您不提供不同的utf-8
。其他客户端驱动程序可能有不同的默认值例如,PgJDBC始终使用utf-8
。
通过客户端驱动程序发送的任何文件或文本的编码。这通常是操作系统默认编码,但可能是不同的编码 - 例如,您的操作系统默认设置为使用COPY
,但您可能尝试latin-1
某些CSV内容保存为utf-8
。
您几乎总是希望服务器编码设置为{{1}}。根据您的具体情况,您需要更改其余部分。您必须提供更多详细信息(确切的错误消息,文件内容等)才能获得有关详细信息的帮助。