入门——SQLite详细介绍
2012-05-24 09:54
381 查看
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:分页查询限制
......
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:分页查询限制
......
相关文章推荐
- Android Studio 环境搭建以及入门详细介绍(装载)
- SD卡中FAT32文件格式快速入门(图文详细介绍)
- sqlite 入门介绍
- 安卓listView下拉刷新,已读未读状态以及SQLite做本地缓存,详细介绍
- Yii PHP Framework实用入门教程(详细介绍)
- SD卡中FAT32文件格式快速入门(图文详细介绍)
- Android游戏开发之数据库SQLite 详细介绍(十七) .
- JAVAWEB开发之Struts2详解(一)——Struts2框架介绍与快速入门、流程分析与工具配置以及Struts2的配置以及Action和Result的详细使用
- Android游戏开发之数据库SQLite 详细介绍(十七)
- Extjs初学入门,详细panel、form、grid等介绍
- shapley值法初学入门详细介绍
- iOS 3D Touch超详细入门介绍(附带demo示例代码)
- SD卡中FAT32文件格式快速入门(图文详细介绍)
- 3G入门理论知识详细介绍
- Shell编程入门:Linux解释器原理详细介绍
- Yii PHP Framework实用入门教程(详细介绍)
- asp.net入门详细介绍
- Android游戏开发之数据库SQLite 详细介绍(十七)
- Android入门:多线程断点下载详细介绍
- Android游戏开发之数据库SQLite 详细介绍(十七)