Добавление / Query / Parse SQLite с использованием Anko

tl; dr: У меня возникают проблемы с попыткой заставить мой код работать, теперь я могу создать базу данных с помощью Anko и вставить столбцы, но когда я пытаюсь вставить данные, и когда я открою базу данных на sqliteman, мои столбцы пустые. также не знаю, как получить данные в строках / 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) } } 

Я понятия не имею, как это сделать. Мне нужно получить данные из базы данных. Я читал документацию, но я не знаю, как реализовать эту

Предположим, что у меня есть три столбца _id , name и day я делал что-то вроде

 db.select("main_db","_id","name","day").exec { parseSingle //something goes here to send the data to String/Int } 

Надеюсь, еще не слишком поздно. Вы можете попробовать следующее:

 database.use { select("main_db", "_id", "name","day").exec { parseList( object : MapRowParser<Map<String, Any?>> { override fun parseRow(columns: Map<String, Any?>): Map<String, Any?> { Log.e("Your result", columns.toString()) return columns } } ) }