微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Sqlite 数据库中的数据填充微调器

如何解决使用 Sqlite 数据库中的数据填充微调器

我有问题。我创建了一个包含 3 列(id、Municipity_Name、Ref_PRAO)的 sqlite 数据库。我的数据库工作正常,我可以使用“数据库检查器”进行查询

现在,我想用我的数据库中的这些数据填充我的微调器 (input_commune),但我找不到任何代码或帮助使其在 Kotlin 上工作...

这是我的表格:

    package sicae.oise.ceos

import android.os.Bundle
import android.view.View
import android.widget.ArrayAdapter
import android.widget.Spinner
import androidx.appcompat.app.AppCompatActivity
import com.android.volley.RequestQueue
import com.android.volley.toolBox.Volley


class Formulaire : AppCompatActivity() {

    var myDb: BddCeos? = null

    // Déclaration d'initialisation spinner Commune
    var input_commune: Spinner? = null
    var communeNom: java.util.ArrayList<String>? = null
    var arrayAdapter_commune: ArrayAdapter<String>? = null


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_formulaire)

        // Démarrage de la BDD
        myDb = BddCeos(this)

        input_commune = findViewById<View>(R.id.input_commune) as Spinner
        communeNom = ArrayList()

        //ADAPTER
        arrayAdapter_commune = ArrayAdapter(this,android.R.layout.simple_list_item_1,communeNom!!)

        //SET IT TO SPINNER
        input_commune!!.adapter = arrayAdapter_commune


    }
}

这是我的数据库类:

package sicae.oise.ceos

import android.content.Context
import android.database.Cursor
import android.database.sqlite.sqliteDatabase
import android.database.sqlite.sqliteOpenHelper
import java.util.*

class BddCeos(context: Context?) : sqliteOpenHelper(context,DATABASE_NAME,null,1) {
    override fun onCreate(db: sqliteDatabase) {
        db.execsql("create table " + TABLE_NAME + "(Id_WAPITI INT,Ref_PRAO TEXT,Commune_Nom TEXT)")
    }

    override fun onUpgrade(db: sqliteDatabase,oldVersion: Int,newVersion: Int) {
        db.execsql("DROP TABLE IF EXISTS " + TABLE_NAME)
        onCreate(db)
    }

    companion object {
        const val DATABASE_NAME = "BddCeos.db"
        const val TABLE_NAME = "ceos_table"
        const val COL_1 = "Id_WAPITI"
        const val COL_2 = "Ref_PRAO"
        const val COL_3 = "Commune_Nom"
    }

    init {
        val db = this.writableDatabase
    }

    fun communeNom(): List<String>? {
        val list: MutableList<String> = ArrayList()

        // Select All Query
        val selectQuery = "SELECT" + COL_3 + "FROM" + TABLE_NAME
        val db: sqliteDatabase = this.readableDatabase
        val cursor: Cursor = db.rawQuery(selectQuery,null)

        if (cursor.movetoFirst()) {
            do {
                list.add(cursor.getString(1))
            } while (cursor.movetoNext())
        }
        // closing connection
        cursor.close()
        db.close()
        // returning lables
        return list
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。