zoukankan      html  css  js  c++  java
  • SQLite

    简单的SQLite创建、插入数据、更新数据

     //创建一个数据库
            SQLiteDatabase db = openOrCreateDatabase("user.db", MODE_PRIVATE, null);
            //执行原生sql语句
            db.execSQL("create table if not exists usertb(_id integer primary key autoincrement ,name text not null,age text,sex text)");
            //插入信息的两种方式
            db.execSQL("insert into usertb(name,age) values ('Lnn','17')");
    
            ContentValues values = new ContentValues();
            values.put("name", "Tim");
            values.put("age", "18");
            values.put("sex", "women");
            db.insert("usertb", null, values);
            values.clear();
            values.put("name", "Nancy");
            values.put("age", "18");
            values.put("sex", "women");
            db.insert("usertb", null, values);
            values.clear();//清空values的值
            values.put("sex", "man");
            db.update("usertb", values, "_id> ?", new String[]{"1"});//做更新操作,目标为id>1
            db.delete("usertb", "name like ?", new String[]{"%Nan%"});//删除操作,删除名字带有Nan的
    
            Cursor c = db.rawQuery("select * from usertb ", null);//初始游标位置为-1
    
            if (c != null) {
                while (c.moveToNext()) {//游标第一次移动后位置为0,对应的id为1
                    int id = c.getInt(c.getColumnIndex("_id"));
                    String name = c.getString(c.getColumnIndex("name"));
                    String sex = c.getString(c.getColumnIndex("sex"));
    
                    textView.setText(textView.getText() + "count=" + c.getCount() + ",id=" + id + ",name=" + name + ",sex=" + sex);
                }
                c.close();
            }
    

    创建数据库的第二种方法:

    写一个类继承自SQLiteOpenHelper,这个好处是可以更新数据库操作

    public class DB extends SQLiteOpenHelper {
    
        public DB(Context context, String name) {
            super(context, name, null, 1);
        }
    
        @Override
        //首次创建数据库的时候调用,一般写建立库和表的操作
        public void onCreate(SQLiteDatabase db) {
            db.execSQL("create table if not exists usertb(_id integer primary key autoincrement ,name text not null,age text,sex text)");
        }
    
        @Override
        //当数据库版本发生变化时候会执行
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    
        }
    }
    

     在页面实例化

            DB dbhelp = new DB(MainActivity.this, "user.db");
            SQLiteDatabase db = dbhelp.getWritableDatabase();
    

     其后操作同上

  • 相关阅读:
    为什么 PCB 生产时推荐出 Gerber 给工厂?
    Fedora Redhat Centos 有什么区别和关系?
    【KiCad】 如何给元件给元件的管脚加上划线?
    MCU ADC 进入 PD 模式后出现错误的值?
    FastAdmin 生产环境升级注意
    EMC EMI 自行评估记录
    如何让你的 KiCad 在缩放时不眩晕?
    KiCad 5.1.0 正式版终于发布
    一次单片机 SFR 页引发的“事故”
    java基础之集合
  • 原文地址:https://www.cnblogs.com/lyxin/p/5792684.html
Copyright © 2011-2022 走看看