2009-10-30 82 views
1

我正在开发一个需要存储葡萄牙字符的应用程序。我想知道是否需要做任何配置来准备我的SQLite数据库来存储那些被认为是特殊字符的数据。当我查询包含这些字符的数据库表时,我得到'?' (不含引号)代替。SQLite和葡萄牙文字符

+0

你在用什么语言? – 2009-10-30 06:32:59

+0

我正在使用Objective-C – ForeignerBR 2009-11-02 23:05:51

回答

1

可能是一个编码问题。你的数据库/客户端是否使用UTF-8? 你应该检查你的DB编码PRAGMA encoding;,确保你的客户端使用相同的编码工作,并确认使用的编码能够很好地处理那些葡萄牙语字符。

+0

我在我的Mac上使用sqlite3作为客户端,所以它应该处理这些只是罚款......但我怎样才能确保它正确地处理葡萄牙字符? 我刚刚检查了数据库编码,它返回了UTF-8。 – ForeignerBR 2009-10-30 05:42:40

+0

UTF-8适用于葡萄牙语。你的数据库包含'?' (即首先出现数据库损坏),则控制台或客户端无法处理UTF-8。我会尝试像脚本语言(python)那样的另一个客户端来查看数据库中的真实情况,或尝试创建一个新的数据库并将这些字符放在一个表中,然后再次尝试使用这个新数据库的过程,以查看您是否获得'?'。 – 2009-10-30 06:45:21