【安卓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可以是所有基本类型的包装类

时间: 2024-11-07 21:30:54

【安卓9】SQLiteDatabase类、ContentValues 类的相关文章

java类Date类概述及其方法

1.Date类概述 类Date表示特定的瞬间,精确到毫秒 2.构造方法 public Date() public Date(long date) 3.成员方法 public long getTime() public void setTime(long time) package com; import java.util.Date; /**  * Date类概述  *  Date类表示特定的瞬间,精确到毫秒  *   * 构造方法  *  public Date()  *  public Da

python_way.day7 模块(configparser,xml,shutil,subprocess)、面向对象(上)(创建类,类的构成,函数式编程与面向对象编程的选择,类的继承)

python_way.day7 1.模块 configparser,xml,shutil,subprocess 2.面向对象(上) 创建类,类的构成,函数式编程与面向对象编程的选择,类的继承 1.模块 configparser 用于处理特定格式的文件,其本职上使用open来操作,只能是  [test1] 特定的格式 [test1] k1 = 123 k2 = True [test2] k1 = 123 k2 = v1 文件内容 1.获取 import configparser #打开文件找到文件

C++ 常用类 string类

===6.3.2使用string对象=== string word="I love China" *链接字符串* string description=adjective  + " " + word; _Note_: 不能连接两个字符串字面量,下面的语句是错误的 string test= "I have" + "a dream"; ===6.3.3访问字符串中的字符=== *读取字符串* getline(cin, text);

UML 类与类之间的四大关系的一些图标及代码含义

UML 类与类之间的四大关系的一些图标及代码含义 另一个版本: 关联:连接模型元素及链接实例,用一条实线来表示: 依赖:表示一个元素以某种方式依赖于另一个元素,用一条虚线加箭头来表示: 聚合:表示整体与部分的关系,用一条实线加空心菱形来表示: 组成:表示整体与部分的有一关系,用一条实线加实心菱形来表示: 泛化(继承):表示一般与特殊的关系,用一条实线加空心箭头来表示: 实现:表示类与接口的关系,用一条虚线加空心箭头来表示:类与类之间存在以下关系:(1)泛化(Generalization)(2)关

今天最主要的就是掌握了类与类之间的关系

今天编写出了表达式计算器的第一版程序,主要还是更加熟悉了类与类之间的关系.第一版程序有个问题,就是它任何情况下都执行右结合律,比如正常输入8-9+1,程序处理成8-(9+1).明天学习改进的方法. 今天整理了一下类与类之间各种关系的区别.如下文 http://www.cnblogs.com/mingdimowang-lyw/p/6598184.html 今天的学习是比较痛苦的,一度想让自己放弃. 后来冷静了一下,思考一下为什么会想放弃.其实是因为自己试图去完全靠自己编写程序,但是自己距离这个程度

学习笔记:类与类之间的关系

转自:http://www.cnblogs.com/liuling/archive/2013/05/03/classrelation.html(谢谢楼主分享) 一.继承关系      继承指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父接口)的功能,并可以增加它自己的新功能的能力.在Java中继承关系通过关键字 extends明确标识,在设计时一般没有争议性.在UML类图设计中,继承用一条带空心三角箭头的实线表示,从子类指向父类,或者子接口指向父接口. 二.实现关系      实现

类与类的关系 is-a is-like-a

1.泛化关系:类和类之间继承,接口与接口直接继承 2.实现关系:类和接口对接 3.关联关系:一个类可以知道另一个类的属性方法 4.聚合关系:较强的关联关系,不像关联关系那样平等,这个是一个整体一个部分.(整体无法决定部分) 5.合成关系:和聚合一样,区别是 整体决定部分 is-a: 继承 is-like-a:类和接口的关系 has-a:关联

java 类与类之间的关系 及uml图

类与接口之间的关系 : 继承 类与类之间的关系 :继承关系  包含关系 类与对象之间的关系 : 实例 UML 类图中类与类之间的关系: 泛化关系(generalization) 关联关系(association) 聚合关系(aggregation) 合成关系 (compostion) 依赖关系 (dependency) 1.泛化(Generalization)[泛化]表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系.一般化的关系是从子类指向父类的,与继承或实现的方法相反.

CanVas类(绘图类)

知识点: Canvas():创建一个空的画布,可以使用setBitmap()方法来设置具体的画布 Canvas(Bitmap bitmap):以bitmap对象创建一个画布,则将内容都绘制在Bitmap上,因此bitmap不能为Null Canvas(GL gl):在绘制3D效果时使用,与OpenGL相关 drawColor:设置背景颜色 setBitmap:设置画布 clipRect:设置显示区域,即设置裁剪部分 isOpaque:是否支持透明度 rotate:旋转画布 setViewport