zoukankan      html  css  js  c++  java
  • android 本地数据库SQLiteDatabase简单使用

    可以在启动APP时,初始化本地数据库,检查创建需要的表

    1. 初始化库和数据表,可以在

    Application文件下 SqlDataUtils.init(this) 使用
    
    
    class SqlDataUtils {
    
        companion object{
    
            var db : SQLiteDatabase? = null
    
            //初始化
            fun init(context: Context) {
                   //判断库是否存在,不存在就会创建库。reading 是库的名字,可自定义
                db = SQLiteDatabase.openOrCreateDatabase(context.filesDir.toString() + "/reading.db3", null)
        
                  //创建表  if not exists 判断表是否存在,存在就不创建
                  //primary key autoincrement 主键ID自增
                db!!.execSQL("create table if not exists bookshelf(_id integer" +
                        " primary key autoincrement, " +
                        " type integer(2), " +
                        " name varchar(100)," +
                        " b_img varchar(100)," +
                        " addTime date(20))")
            } 
        }
    }       

    2 查询所有内容

    var cursor : Cursor = db!!.rawQuery("select * from bookshelf ", null)
    if(cursor != null){
        while(cursor.moveToNext()){
            //循环读取下一条数据
            var id = cursor.getInt(0).toLong()
            var type = cursor.getInt(1)
            var name = cursor.getString(2)
        }       
    }

    3. 根据条件查询指定内容

    var name = "名字"
    var cursor : Cursor = db!!.rawQuery("select type,name from bookshelf where name = '$name'", null)
    if(cursor != null){
        while(cursor.moveToNext()){
            //循环读取下一条数据
            var r_type = cursor.getInt(0)
            var r_name = cursor.getString(1)
        }       
    }

    4.查询数据数目

    var name = "名字"
    var cursor : Cursor = db!!.rawQuery("select count(_id) from bookshelf where name = '$name'", null)
    if(cursor != null){
       //光标移动到第一条
        cursor.moveToFirst()
       //获取数据条数
        val count = cursor.getInt(0)       
    }

    5. 增加数据

    val cValue = ContentValues()
    cValue.put("type",1)
    cValue.put("name", "小周")
    db!!.insert("bookmark", null, cValue)

    6. 修改数据

    db!!.execSQL("UPDATE bookshelf SET type = '${2}' WHERE name = '${name}' '")

    7. 删除数据

    db!!.delete("bookshelf", "name = ? and type = ?", arrayOf<String>(name,type))
  • 相关阅读:
    《秒杀系统架构分析与实战 》
    《豆瓣的基础架构》
    转--《亿级用户下的新浪微博平台架构 》
    转-《蚂蚁金服11.11:支付宝和蚂蚁花呗的技术架构及实践 》
    hdu2029
    hdu2027
    hdu2026(water~~)
    PHP电影小爬虫(2)
    今天来做一个PHP电影小爬虫。
    PHP Simple HTML DOM解析器
  • 原文地址:https://www.cnblogs.com/timipaul/p/14801773.html
Copyright © 2011-2022 走看看