首页 > 解决方案 > 如何在androidx房间的列上按降序添加索引?

问题描述

假设我有一个实体用户——

@Entity()
class Users(
    val firstName: String,
    val lastName: String
)

现在我想像这样(firstName DESC,lastName DESC)在这个实体(表)上创建一个复合索引。我可以用这样的 sqlite 命令来做到这一点——

CREATE INDEX index_Users_firstName_lastName ON Users(firstName DESC, lastName DESC)

但是我无法使用 @Entity 注释中的 indices 属性来做到这一点。我试过这样做——

@Entity(indices = [Index("firstName DESC", "lastName DESC")])
class Users(
    val firstName: String,
    val lastName: String
)

但它会导致以下编译器错误——错误:索引中引用的名字 DESC 在实体中不存在。

是否可以在房间的列上按降序创建索引?

标签: sqlitekotlinandroid-room

解决方案


推荐阅读