Android SQLite按utf8整理/订购

Android SQLite按utf8整理/订购,android,sqlite,Android,Sqlite,我在Android上的SQLite表中有以下项目(表选项卡有一列-‘名称’文本) 如果我在SQL Server中使用斯洛伐克语言的排序规则保存了这些项目,并且select*from tab order by name,它会正确地输出排序如下的项目: Beta User Úpal Work 在斯洛伐克语中,带重音的U应排在U之后 在Android上的SQLite中,它按以下顺序输出: Beta User Work Úpal 我知道发生了什么,SQLite可能正在使用字符代码比较字符,而Ú是在W

我在Android上的SQLite表中有以下项目(表选项卡有一列-‘名称’文本)

如果我在SQL Server中使用斯洛伐克语言的排序规则保存了这些项目,并且
select*from tab order by name
,它会正确地输出排序如下的项目:

Beta
User
Úpal
Work
在斯洛伐克语中,带重音的U应排在U之后

在Android上的SQLite中,它按以下顺序输出:

Beta
User
Work
Úpal
我知道发生了什么,SQLite可能正在使用字符代码比较字符,而Ú是在W之后

我该怎么做才能让事情按我的方式发展呢?有可能吗?
声明基本上所有排序规则都是二进制比较的变体,并使用memcmp()比较字符串数据,而不考虑文本编码。

SQLite的C API允许安装。 Android API没有公开这些函数,但至少安装了两个额外的排序规则:

除了SQLite默认的
BINARY
collator之外,Android还提供了另外两个,
LOCALIZED
,它随系统当前的语言环境而变化,以及
UNICODE
,它是UNICODE排序算法,不适合当前的语言环境

Beta
User
Work
Úpal