1

我正在使用开源库 npgsql http://pgfoundry.org/projects/npgsql/来操作postgres 数据库上的第三方数据。数据库编码为 SQL_ASCII。

如果我使用标准的 c# 字符串运行查询,例如

插入城市(城市名称)值(“科隆”)

显示在数据库中的值看起来更像:пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ

例如炒。我花了很多时间尝试使用不同的字符串编码等但没有成功

4

1 回答 1

1

SQL_ASCII 表示您关闭数据库中的编码功能。因此,您需要确保所有客户端都使用相同的编码。我相信 npgsql 将始终使用 UTF8,并且无法更改。

所以没有“显示在数据库中的值” - 这将取决于与数据库对话的客户端的编码。

修复它的最佳方法是在数据库中设置一个实际编码,并将其设置为有用的东西 - 例如 UTF8 或 LATIN1。

于 2011-04-12T12:12:14.967 回答