Android中API建议的方式实现SQLite数据库的增、删、改、查的操作
来源:互联网 发布:南宁的淘宝实体店 编辑:程序博客网 时间:2024/06/04 22:48
package com.examp.use_SQLite.dao;import java.util.ArrayList;import java.util.List;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import com.examp.use_SQLite.PersonSQLiteOpenHelper;import com.examp.use_SQLite.domain.Person;public class PersonDaoForAndroid {// 获取要操作的数据库对象private PersonSQLiteOpenHelper helper;/** * 在构造方法中完成helper的初始化 * * @param context */public PersonDaoForAndroid(Context context) {helper = new PersonSQLiteOpenHelper(context);}/** * 添加数据 * * @param name姓名 * @param number电话 * @return 返回新插入一行的行ID,或者-1说明发生一个错误 */public long add(String name, String number) {// 获取数据库的连接对象SQLiteDatabase db = helper.getWritableDatabase();// 下面是API推荐的写法ContentValues values = new ContentValues();values.put("name", name);values.put("number", number);// 目标数据表// 返回新插入一行的行ID,或者-1说明发生一个错误long id = db.insert("person", null, values);// 及时的关闭数据库连接db.close();return id;}/** * 根据用户姓名查询数据 * * @param name * 查询条件 * @return 查询结果 */public Person findByName(String name) {// 获取数据库连接SQLiteDatabase db = helper.getReadableDatabase();// 目标数据表名|指定返回的数据字段,如果设置null表示返回所有的数据字段|条件语句,不包括where关键字|条件的参数列表|分组的语句|having查询的语句|排序的语句,如果不设置表示使用默认Cursor cursor = db.query("person", null, "name=?",new String[] { name }, null, null, null);// 声明结果对象Person person = null;// 判断是否有结果返回if (cursor.moveToNext()) {// 取出数据集中的单行数据的个字段的数据// cursor.getColumnIndex("id");获取指定的字段的下标// cursor.getInt(index);或getString(index);是获取指定的下标的数据index为int类型;int id = cursor.getInt(cursor.getColumnIndex("id"));String named = cursor.getString(cursor.getColumnIndex("name"));String number = cursor.getString(cursor.getColumnIndex("number"));// 实例化查询结果数据对象person = new Person(id, named, number);}// 关闭数据库连接,释放资源db.close();// 返回数据结果对象return person;}/** * 根据name更新一条数据 * * @param name * 跟新条件 * @param newnumber * 新的数据 * @return rows受影响的行数 */public int update(String name, String newnumber) {SQLiteDatabase db = helper.getWritableDatabase();ContentValues values = new ContentValues();values.put("number", newnumber);// 目标数据表|要更新的数据|更新条件语句|更新条件参数列表int rows = db.update("person", values, "name=?", new String[] { name });db.close();return rows;}/** * 根据指定的名字删除数据 * * @param name * 删除条件 * @return rows受影响的行数 */public int delete(String name) {SQLiteDatabase db = helper.getWritableDatabase();// 目标数据库表名称|条件语句|条件参数int rows = db.delete("person", "name=?", new String[] { name });db.close();return rows;}/** * 查询所有的操作 * * @return 查询的结果集 */public List<Person> findAll() {SQLiteDatabase db = helper.getReadableDatabase();Cursor cursor = db.query("person", null, null, null, null, null, null);// 声明结果集// 初始化结果集List<Person> persons = new ArrayList<Person>();// 判断是否有结果返回while (cursor.moveToNext()) {// 声明结果对象Person person = null;// 取出数据集中的单行数据的个字段的数据// cursor.getColumnIndex("id");获取指定的字段的下标// cursor.getInt(index);或getString(index);是获取指定的下标的数据index为int类型;int id = cursor.getInt(cursor.getColumnIndex("id"));String named = cursor.getString(cursor.getColumnIndex("name"));String number = cursor.getString(cursor.getColumnIndex("number"));// 实例化查询结果数据对象person = new Person(id, named, number);// 向结果集中添加数据persons.add(person);}// 关闭连接,释放资源db.close();// 放回结果集return persons;}}
其它的代码参见另一篇博客Android实现SQLite数据库的增、删、改、查的操作
0 0
- Android中API建议的方式实现SQLite数据库的增、删、改、查的操作
- Android SQLite 数据库、表的增、删、改、查操作
- Android实现SQLite数据库的增、删、改、查的操作
- android数据库使用系统封装的api实现SQLite数据库的增删改查
- 参数拼接方式实现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增删改查
- php实战第九天
- java基础加强_类加载器
- Deep Learning深度学习相关入门文章汇摘
- 浅谈-----异常的捕获和处理(一)
- OA项目笔记
- Android中API建议的方式实现SQLite数据库的增、删、改、查的操作
- OAUTH协议
- HTML服务器控件介绍:HtmlGeneric控件
- Oracle OpenWorld 2010大会的10大看点
- UART_RECV详细设计方案
- 黑马程序员--银行调度系统面试题
- 【原创】DOS命令下执行java文件方法
- 天然木材具有优异的保健功效
- Android界面——GridView的一些事