zoukankan      html  css  js  c++  java
  • SQLiteDatabase里面的简单操作数据库的方法

    1、使用insert方法插入记录
    SQLiteDatabase的insert方法的签名为long insert(String table,String nullColumnHack,ContentValues values),这个插入方法的参数说明如下:
    table:代表想插入数据的表名。
    nullColumnHack:代表强行插入null值的数据列的列名。
    values:代表一行记录的数据。
    insert方法插入的一行记录使用ContentValues存放,ContentValues类似于Map,它提供了put(String key,Xxx value)(其中key为数据列的列名)方法用于存入数据、getAsXxx(String key)方法用于取出数据。
    例如如下语句:
    ContentValues values=new ContentValues();
    values.put("name","孙悟空"):
    values.put("age",500);
    //返回新添记录的行号,该行号是一个内部直,与主键id无关,发生错误返回-1
    long rowid=db.insert("person_inf",null,values);

    2、使用update方法更新数据
    SQLiteDatabase的update方法签名为update(String table,ContentValues values,String whereClause,String[] whereArgs),这个更新方法的参数说明如下:
    table:代表想要更新数据的表名。
    values:代表想要更新的数据。
    whereClause:满足该whereClause子句的记录将会被更新。
    whereArgs:用于为whereArgs子句传递参数。
    例如我们想要更新person_inf表中所有主键大于20的人的人名,可调用如下方法:
    ContentValues values=new ContentValues();
    //存放更新后的人名
    values.put("name","新人名");
    int result=db.update("person_inf",values,"_id>?",new Integer[]{20});

    3、使用delete方法删除记录
    SQLiteDatabase的delete方法签名为delete(String table,String whereClause,String[] whereArgs),这个删除的参数说明如下:
    table:代表想删除数据的表名。
    whereClause:满足该whereClause子句的记录将会被删除。
    whereArgs:用于为whereArgs子句传入参数。
    删除person_inf表中所有人名以孙开头的记录
    int result=db.delete("person_inf","person_name like ?",new String[]{"孙_"});

    4、使用query方法查询记录
    SQLiteDatabase的query方法签名为Cursor query(boolean distinct,String table,String[] columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy,String limit),这个query方法的参数说明如下。
    distinct:指定是否去除重复记录。
    table:执行查询数据的表名。
    columns:要查询出来的列名。
    selection:查询条件子句。
    selectionArgs:用于为selection子句中占位符传入参数值,值在数组中的位置与占位符在语句中的位置必须一致,否则就会有异常。
    groupBy:用于控制分组。
    having:用于对分组进行过滤。
    orderBy:用于对记录进行排序。
    limit:用于进行分页。

    例如查询出person_inf表中人名以孙开头的数据
    Cursor cursor=db.query("person_inf",new String[]{"_id,name,age"},"name like ?",new String []{"孙%"},null,null,"personid desc","5,10");
    cursor.close();

  • 相关阅读:
    备忘录模式
    中介者模式
    观察者模式、发布订阅和事件驱动
    ELK日志系统之kibana的使用操作
    ELK日志系统之说说logstash的各种配置
    03篇ELK日志系统——升级版集群之ELK日志系统整合springboot项目
    02篇ELK日志系统——升级版集群之kibana和logstash的搭建整合
    01篇ELK日志系统——升级版集群之elasticsearch集群的搭建
    Linux安装jdk环境
    01GitLab的使用——创建项目并上传到GitLab
  • 原文地址:https://www.cnblogs.com/ahao214/p/4257280.html
Copyright © 2011-2022 走看看