android中sqlite的使用
来源:互联网 发布:淘宝上收货地址怎么改 编辑:程序博客网 时间:2024/06/01 07:19
1. 在android中当操作SQLite数据库需要得到一个SQLiteOpenHelper对象,而SQLiteOpenHelper是一个抽象类,用户需要继承这个类,并实现该类中的一些方法。
2. 创建一个SQLiteTest继承 SQLiteOpenHelper类,必须覆写下面2个方法和创建一个构造函数(可带多个参数)
◆onCreate(SQLiteDatabase db):创建数据库时调用,在数据库第一次创建的时候会调用这个方法,一般我们在这个方法里边创建数据库表。
◆onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion):版本更新时调用,当数据库需要修改的时候,Android系统会主动的调用这个方法。一般我们在这个方法里边删除数据库表,并建立新的数据库表,当然是否还需要做其他的操作,完全取决于应用程序的需求。
构造函数如下:
public SQLiteTest (Context context, String name, CursorFactory factory,int version) {
super(context, name, factory, version);
}
3. 继承SQLiteOpenHelper之后就拥有了以下两个方法:
◆getReadableDatabase()创建或打开一个只读数据库
◆getWritableDatabase()创建或打开一个读写数据库,这个方法经常被调用。每次在操作数据库增加,删除,修改,查询的时候都需要调用这个方法。
4. 执行query查询方法后,返回的是一个Cursor游标,游标最开始指向的是记录集合中第一行的上一行,因此首先需要先调用cursor.next()将游标移动到记录集合的第一行,接着再获取数据即可。
5. SQLiteDatabase还专门提供了对应于添加、删除、更新、查询的操作方法: insert()、delete()、update()和query() 。这些方法实际上是给那些不太了解SQL语法的人使用的,对于熟悉SQL语法的程序员而言,直接使用execSQL()和rawQuery()方法执行SQL语句就能完成数据的添加、删除、更新、查询操作。execSQL()方法可以执行insert、delete、update和CREATE TABLE之类有更改行为的SQL语句rawQuery()方法用于执行select语句。
//创建一个可读写的数据库
SQLiteDatabase db = mOpenHelper.getWritableDatabase();
数据的添删改查分别可以通过2种途径来实现
一)数据的增加
1)使用insert方法
ContentValues cv = new ContentValues();//实例化一个ContentValues用来装载待插入的数据cv.put("username","Jack Johnson");//添加用户名
cv.put("password","iLovePopMusic"); //添加密码
db.insert("user",null,cv);//执行插入操作
2)使用execSQL方式来实现
String sql = "insert into user(username,password) values ('Jack Johnson','iLovePopMuisc');//插入操作的SQL语句
db.execSQL(sql);//执行SQL语句
二)数据的删除
1)使用delete方法
String whereClause = "username=?";//删除的条件
String[] whereArgs = {"Jack Johnson"};//删除的条件参数
db.delete("user",whereClause,whereArgs);//执行删除
2)使用execSQL方式的实现
String sql = "delete from user where username='Jack Johnson'";//删除操作的SQL语句
db.execSQL(sql);//执行删除操作
三)数据修改
1)ContentValues cv = new ContentValues();//实例化ContentValues
cv.put("password","iHatePopMusic");//添加要更改的字段及内容
String whereClause = "username=?";//修改条件
String[] whereArgs = {"Jack Johnson"};//修改条件的参数
db.update("user",cv,whereClause,whereArgs);//执行修改
2)String sql = "update user set password = 'iHatePopMusic' where username='Jack Johnson'";//修改的SQL语句
db.execSQL(sql);//执行修改
四)数据查询
1)数据查询相对前面几种方法就复杂一些了,因为查询会带有很多条件
通过query实现查询的
public Cursor query(String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
各参数说明:
· table:表名称
· colums:列名称数组
· selection:条件子句,相当于where
· selectionArgs:条件语句的参数数组
· groupBy:分组
· having:分组条件
· orderBy:排序类
· limit:分页查询的限制
· Cursor:返回值,相当于结果集ResultSet
2)String sql = "select * from user" ;
rawQuery(sql);
6.OnItemLongClickListener长按事件监听
- android中sqlite的使用
- android中SQLite的使用
- android中SQLite的使用
- Android中SQLite的使用
- Android中SQLite的使用
- Android中SQlite的使用
- android中sqlite的使用
- Android中SQLite的使用
- Android中SQLite使用
- Android中SQLite使用
- Android中SQLite使用
- Android中SQLite使用
- Android中Sqlite使用
- Android中使用sqlite
- Android中SQLite的使用 快速入门SQLite
- Android中sqlite数据库的简单使用
- Android中Sqlite的简单使用
- Android数据库Sqlite中索引的使用
- PHP_PHP开发框架-Laravel
- 前端数据可视化插件(五)立体图
- Dispatch Queue实例
- C# WPF 控件通用属性简介
- 360校招笔试算法题
- android中sqlite的使用
- 前端数据可视化插件(三)地图
- 【JavaScript】正则表达式
- Java总结——反射专题
- jQuery收缩与展开特效
- 垃圾回收
- ImageLoader详细介绍
- iOS-设置导航栏透明及字体、左右按钮、边框颜色
- 文字滚动代码