您的位置:首页 > 移动开发 > Android开发

Android SQLite 最常用的几个类和那些方法

2016-06-27 09:20 323 查看
Android SQLite 最常用的几个类和那些方法:

一、SQLiteOpenHelper :

onCreate(SQLiteDatabase db);
用于初次使用软件时生成数据库表。
当调用SQLiteOpenHelper的getWritableDatabase()或者getReadableDatabase()方法获取用于操作数据库的SQLiteDatabase实例的时候,
如果数据库不存在,Android系统会自动生成一个数据库,接着调用onCreate()方法,onCreate()方法在初次生成数据库时才会被调用,
在onCreate()方法里可以生成数据库表结构及添加一些应用使用到的初始化数据

onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion);
在数据库的版本发生变化时会被调用,一般在软件升级时才需改变版本号

getWritableDatabase();
getReadableDatabase();
两方法都可以获取一个用于操作数据库的SQLiteDatabase实例。但getWritableDatabase() 方法以读写方式打开数据库,一旦数据库的磁盘空间满了,数据库就只能读而不能写,倘若使用getWritableDatabase()打开数据库就会出错。getReadableDatabase()方法先以读写方式打开数据库,如果数据库的磁盘空间满了,就会打开失败,当打开失败后会继续尝试以只读方式打开数据库。

二、SQLiteDatabase:

1、db.insert(table, nullColumnHack, values)
第一个参数是表名称,第二个参数是空列的默认值,第三个参数是ContentValues类型的一个封装了列名称和列值的Map;

2、db.delete(table, whereClause, whereArgs)
第一个参数是表名称,第二个参数是删除条件,第三个参数是删除条件值数组

3、db.update(table, values, whereClause, whereArgs)
第一个参数是表名称,第二个参数是更行列ContentValues类型的键值对(Map),第三个参数是更新条件(where字句),第四个参数是更新条件数组

4、db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy)(下面有对该方法详细讲解)

5、db.execSQL(sql) // 执行任何SQL语句

6、db.rawQuery(sql, selectionArgs)

对第四个方法详细讲解:

Cursor  query(table, columns, selection, selectionArgs, groupBy, having, orderBy, limit)
各个参数的意义说明:
①table:表名称
②columns:列名称数组
③selection:条件字句,相当于where
④selectionArgs:条件字句,参数数组
⑤groupBy:分组列
⑥having:分组条件
⑦orderBy:排序列
⑧limit:分页查询限制

三、Cursor:
Cursor是一个游标接口,提供了遍历查询结果的方法,如移动指针方法move(),获得列值方法getString()等.

Cursor游标常用方法:

getCount()   总记录条数
isFirst()     判断是否第一条记录
isLast()      判断是否最后一条记录
moveToFirst()    移动到第一条记录
moveToLast()    移动到最后一条记录
move(int offset)   移动到指定记录
moveToNext()    移动到下一条记录
moveToPrevious()    移动到上一条记录
getColumnIndexOrThrow(String columnName)  根据列名称获得列索引
getInt(int columnIndex)   获得指定列索引的int类型值
getString(int columnIndex)   获得指定列缩影的String类型值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: