按原样存储和检索ÑÑ字符

时间:2012-11-21 12:27:07

标签: php postgresql

有没有办法可以在我的postgres数据库中存储ñ或Ñ字符,数据库是SQL_ASCII ......

我所做的是插入“ñ”并在数据库中保存为“ñ”,输出仍然是“ñ”,这很好。但我想要的是按原样在数据库中插入“ñ”。

我的问题是某些应用程序输出“ñ”,就像ateila或Crystal报告一样。

任何想法的人?

2 个答案:

答案 0 :(得分:3)

将其转换为UTF-8并给它一个去,它应该工作。 请查看此question以获取更多信息:

答案 1 :(得分:1)

SQL_ASCII通常是一个坏主意。考虑将您的数据库转换为UTF-8。这很难做到,因为你的数据库中充满了编码错误的数据,但它会为你节省很多痛苦。

SQL_ASCII DB可以很好地存储非ASCII字符。您的应用程序只需拥有相同的编码,并始终始终如一地转换为该编码。 client_encoding被忽略。在您的应用程序中,您必须始终确保将从外部源获得的文本转换为该编码,并将数据从数据库转换为外部收件人期望的编码。 SQL_ASCII的主要内容是数据库不会检查以确保您正确执行。它不会为您转换,也不会验证数据是否与client_encoding匹配。没有元数据告诉客户您正在使用的编码。

更改为UTF-8