如何使用Anko检查记录是否存在?

我正在学习使用anko从sqlite中获取数据。我可以成功打印数据(如果存在记录),但是当数据不存在时,我的应用程序总是会崩溃。如何使用Anko检查记录是否存在?

错误说:

parseSingle只接受一次入境

我知道错误的确切意思,我只是不知道如何解决它游标。

这里是查询代码:

fun getUserByUid(uid: Int): UserModel 

{

val data = context.database.use {

val db = context.database.readableDatabase

val columns = UserModel.COLUMN_ID + "," + UserModel.COLUMN_NAME + "," + UserModel.COLUMN_API_KEY

val query = db.select(UserModel.TABLE_NAME, columns)

.whereArgs("(uid = {userId})",

"userId" to uid)

query.exec {

val rowParser = classParser<UserModel>()

parseSingle(rowParser) // this line that trigger error exception

}

}

return data

}

我试图找到count功能queryrowParser变量,以检查是否存在记录与否,但无法找到它。

回答:

从维基页面。 https://github.com/Kotlin/anko/wiki/Anko-SQLite#parsing-query-results

解析查询结果

因此,我们有一些光标,以及我们如何可以解析它变成普通班? Anko提供的函数parseSingle,parseOpt和parseList可以更简单地完成它。

方法描述 parseSingle(rowParser):T解析一行 parseOpt(rowParser):T?解析零行或一行 parseList(rowParser):List解析零行或多行 请注意,如果接收的游标包含多行,则parseSingle()和parseOpt()将引发异常。

以上是 如何使用Anko检查记录是否存在? 的全部内容, 来源链接: utcz.com/qa/262784.html

回到顶部