1

希望有人能在这方面提供帮助

我有一个包含英语和德语文本的数据库,我将 php 与 Postgres 数据库一起使用,查询英语文本工作正常,但是当查询字符串包含任何德语字母时,我得到空结果。

例如:

select field from Table where field ilike '%software%'

按预期返回结果

select field from Table where field ilike '%bersetzung%'

按预期返回结果

select field from Table where field ilike '%Übersetzung%'

返回空集

show client_encoding 返回 UNICODE,即使在 pgadmin 中运行上述查询,当查询字符串中有任何德语字母时,也会返回空集。

数据库编码为 UTF-8

提前致谢

4

1 回答 1

0

PostgreSQL 在如何依赖系统行为方面有许多奇怪之处。这是一。通常,本地化支持取决于系统库和系统行为。对于像大写/小写这样的东西和像排序规则这样的东西都是如此。

看起来您无法在数据库设置后创建数据库的本地化设置。您可能需要备份数据库,使用正确的本地化设置重新创建它,然后重新加载数据。这可能不是您正在寻找的答案,但它可能是最好的答案。

于 2013-05-21T02:01:46.833 回答