确保Android上的SQLite使用UTF-8作为字符集

时间:2010-11-25 10:53:41

标签: android sqlite

我正在开发一个使用SQLite作为后端的Android应用程序。

我想确保数据库中的所有表都使用UTF-8。我怎样才能做到这一点?

我试过了:

CREATE TABLE myTable (_all_columns_definitions_) DEFAULT CHARSET=utf8;

但出现语法错误。

3 个答案:

答案 0 :(得分:19)

鉴于sqlite仅支持UTF-8和UTF-16作为编码,你会注意到Android是否会以UTF-8以外的方式创建数据库。 sqlite3_open默认以UTF-8创建数据库,这就是Android可能使用的。

答案 1 :(得分:3)

您需要使用encoding PRAGMA

PRAGMA encoding = "UTF-8";

答案 2 :(得分:1)

默认情况下,Android SQLite使用UTF-8。 我对特殊字符有同样的问题,但因为当我在第一次启动时填充数据库时,我使用了另一个字符集的txt文件。