android anko 插件,android – 使用Anko添加/查询/解析SQLite

tl; dr:我在尝试让我的代码工作时遇到问题,现在我可以使用Anko创建数据库并插入列但是当我尝试插入数据时,当我在sqliteman上打开数据库时,我的列是空的我也不知道如何检索strings / Int中的数据以发送到View

这显然工作正常我可以看到我的数据库创建所有具有正确名称的列

class MySqlHelper(ctx: Context) : ManagedSQLiteOpenHelper(ctx, "db_main") {

companion object {

private var instance: MySqlHelper? = null

@Synchronized

fun getInstance(ctx: Context): MySqlHelper {

if (instance == null) {

instance = MySqlHelper(ctx.applicationContext)

}

return instance!!

}

}

override fun onCreate(db: SQLiteDatabase) {

db.createTable("db_main", true,

"_id" to INTEGER + PRIMARY_KEY + AUTOINCREMENT + NOT_NULL,

"name" to TEXT,

"day" to INTEGER)

}

override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) {

}

// Access property for Context

val Context.database: MySqlHelper

get() = getInstance(applicationContext)

}

这应该工作,但它不工作虽然我有数据库中的所有列,我没有得到任何错误消息,他们没有被添加

下面的代码在MainActivity中调用

val db = MySqlHelper(this)

fun addtosqllite(title: String, datepicker: DatePicker) {

db.use {

insert("db_main",

"_id" to 1,

"name" to title,

"day" to datepicker.dayOfMonth)

}

}

我不知道该怎么做

我需要从数据库中检索数据.我一直在阅读文档,但我不知道如何实现this

假设我有三列_id,name和day

我正在做类似的事情

db.select("main_db","_id","name","day").exec {

parseSingle //something goes here to send the data to String/Int

}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部