• 【安卓9】SQLiteDatabase类、ContentValues 类


    SQLiteDatabase类  

      android.database.sqlite.SQLiteDatabase类的实例都代表了一个SQLite数据库的操作,通过SQLiteDatabase类可以执行SQL语句,以完成对数据表的增加、修改、删除、查询等操作,在此类之中定义了基本的数据库执行SQL语句的操作方法以及一些操作的模式常量。

    常用操作方法

    常量或方法

    类型

    描述

    public static final int OPEN_READONLY

    常量

    以只读方式打开数据库

    public static final int OPEN_READWRITE

    常量

    以读/写方式打开数据库

    public static final int CREATE_IF_NECESSARY

    常量

    如果指定的数据库文件不存在,则创建新的

    public static final int NO_LOCALIZED_COLLATORS

    常量

    打开数据库时,不对数据进行机遇本地化语言的排序

    public void beginTransaction()

    普通

    开始事务

    public void endTransaction()

    普通

    结束事务,提交或者是回滚数据

    public void close()

    普通

    关闭数据库

    public void execSQL(String sql)

    普通

    执行SQL语句

    public void execSQL(String sql, Object[] bindArgs)

    普通

    执行SQL语句,同时绑定参数

    public static SQLiteDatabase openDatabase(

    String path, SQLiteDatabase.CursorFactory factory, int flags)

    普通

    以指定的模式打开指定路径下的数据库文件

    public static SQLiteDatabase openOrCreateDatabase(

    File file, SQLiteDatabase.CursorFactory factory)

    普通

    打开或者是创建一个指定路径下的数据库

    public long insert(String table,

    String nullColumnHack, ContentValues values)

    普通

    插入数据,table为表名称,nullColumnHack表示传入的valuesnull,则列被设为null,values表示所有要插入的数据

    public long insertOrThrow(String table,

    String nullColumnHack, ContentValues values)

    普通

    插入数据,但会抛出SQLException异常

    public int update(String table, ContentValues values,String whereClause, String[] whereArgs)

    普通

    修改数据,table为表名称,values为更新数据,whereCluause指明WHERE子句,whereArgs为WHERE子句参数,用于替换“?”

    public int delete(String table, String whereClause,

    String[] whereArgs)

    普通

    删除数据,table为表名称,whereClause指明WHERE子句,whereArgs为参数,用于替换“?”

    public boolean isOpen()

    普通

    判断数据库是否是已打开

    public void setVersion(int version)

    普通

    设置数据库的版本

    public Cursor query (boolean distinct, String table,

    String[] columns, String selection,

    String[]selectionArgs,String groupBy,

    String having, String orderBy, String limit)

    普通

    执行数据表查询操作,其中的参数有distinct(是否去掉重复行)、table(表名称)、columns(列名称)、selection(WHERE子句)、selectionArgs(WHERE条件)、groupBy(分组)、having(分组过滤)、orderBy(排序)、limit(LIMIT子句)

    public Cursor query(String table, String[] columns,

    String selection, String[] selectionArgs, String groupBy ,

    String having, String orderBy)

    普通

    执行数据表查询操作

    public Cursor rawQuery(String sql, String[] selectionArgs)

    普通

    执行指定的SQL查询语句

     

    ContentValues 类

      ContentValues类包装了HashMap类,该类用于存取键值对的数据,每个键值对表示一列的列名和该列的数据。

              常用方法

    1、  ContentValues();

             作用:无参构造方法,创建一个内部成员变量为HashMap<String,Object>的对象。该成员变量名为 mValues

    2、  void put(String key,Object value);

             作用:向成员变量mValues中存放一个键-值对数据

             提示:value可以是Java的所有基本数据类型、数组、对象的类型

    3、  Object get(String key);

             作用:获取键名key对应的值。

    4、  XXX getAsXXX(String key);

             作用:返回XXX类型的值

             提示:XXX可以是所有基本类型的包装类

  • 相关阅读:
    树莓派测试摄像头
    React Native入坑记录
    2016总结及2017计划
    C#操作Excel
    IntelliJ配置SpringMVC提示“found:java.lang.String required:java.lang.String”
    opencv手工编译
    iOS webview注入JS
    C#生成exe、dll版本号自动增加
    iOS 允许po打印frame等内容
    2015总结及2016计划
  • 原文地址:https://www.cnblogs.com/leelee/p/7045042.html
Copyright © 2020-2023  润新知