gpt4 book ai didi

android - 房间从查询中返回 kotlin 元组

转载 作者:行者123 更新时间:2023-12-04 23:56:38 31 4
gpt4 key购买 nike

我正在使用房间数据库,我想将表列作为 kotlin 元组进行查询。任何人都可以帮助我吗?

所以我有一个名为 User 的表,它有多个字段,现在我想查询 2 个特定字段 first_namelast_name 以及 Kotlin 元组(对)


@Entity(tableName = "user")
data class User(
var id: String,
var first_name: String,
var last_name: String
// some other fields
)

@Dao
interface UserDao {

@Query("SELECT first_name as first, last_name as second FROM user WHERE id = :id")
fun getUserName(id: String): Pair<String, String>
}


我遇到如下编译器错误:

Not sure how to convert a Cursor to this method's return type (kotlin.Pair<java.lang.String,java.lang.String>)

最佳答案

这就是实现它的方法。

为元组创建类。包括所有你想得到的领域。在您的例子中,名字和姓氏是字段。这个概念称为返回列的子集

用户名元组

data class UserNameTuple(
@ColumnInfo(name = "first_name") val firstName: String?,
@ColumnInfo(name = "last_name") val lastName: String?
)

像这样设计查询:

@Query("SELECT first_name, last_name FROM user WHERE id = :id")
fun getUserName(id: String): List<UserNameTuple>

用元组数据得到满足查询条件的数据。

这就是您如何在您的应用程序中实现它。

关于android - 房间从查询中返回 kotlin 元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58407214/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com