如何以UTF-8编码创建SQLite数据库

时间:2013-08-20 13:22:58

标签: c# .net sqlite utf-8 windows-store-apps

我正在使用SQLite数据库开发Windows应用商店应用(C#)。

问题

如果我在“qwerôty”中有一个特殊字符,当我的应用程序检索此值时,字符串对象包含“qwerty”(没有此特殊字符)。

数据库创建

我使用 sqlite3 实用程序创建我的数据库,然后我将所有查询(创建表,插入...)写入文件(UTF-8编码)并复制并粘贴所有sqlite3命令提示符中的查询。

当我执行 select * from table 时,我看到“qwerôty”,但是在我的应用中,字符串不包含“ô”。

应用内代码

以下是我从SQLite数据库中检索数据的方法:

private SQLiteAsyncConnection conn = new SQLiteAsyncConnection(DbPath);
return await conn.Table<BusinessObject>().ToListAsync();

字符串属性位于BusinessObject对象

我的猜测

我认为我用 sqlite3 创建的sqlite文件不是用UTF-8编码的。当我使用Windows内置记事本打开它并执行“sav as”时,所选编码为ANSI。但我找不到如何创建以UTF-8编码的数据库。

如果您对我的问题有什么了解,请提前感谢。

拉​​菲

1 个答案:

答案 0 :(得分:0)

问题来自记事本,因为Paparazzi表示