android 数据库sqlite的使用

本文介绍如何在Android应用中使用SQLite数据库进行数据存储。包括创建数据库、查询数据、删除记录及添加新数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 android 应用开发的过程中,我们需要在本地存一些数据,这时候我们就需要使用数据库来帮助我们实行,当然Android的数据存储不仅仅只有数据库的这一种方式,使用sqlite可以帮助我们存储更多的数据,如果少量的数据,我们可以通过shareSharedPreferences 来实现少量数据的存储,下面讲一下关于数据库sqlite

的使用,

package com.example.iclubhelper.sqllite;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class DBOpenHelper extends SQLiteOpenHelper{

    public DBOpenHelper(Context context) {
	super(context,"message", null, 1);
	// TODO Auto-generated constructor stub
    }
    @Override
	public void onCreate(SQLiteDatabase db) {
/*	当数据库首次被创建的时候将被执行的sql语句,下面解释一下sql语句,创建一个表名为message的数据库,当其不存在的时候自动创建,第一个参数是每条数据的id,然后是自定义的每条记录的名称和记录的数据类型
*/
		db.execSQL("CREATE TABLE IF NOT EXISTS message (id integer primary key autoincrement,title varchar(128),content text,time text, nid text)");
	}
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

	}
}

然后接着就是数据库在activity中的使用,下面是数据库的查询和获取数据库中的内容。

 private DBOpenHelper dBOpenHelper;
dBOpenHelper = new DBOpenHelper(this);
//获得可以读取数据的数据库对象
SQLiteDatabase db = dBOpenHelper.getReadableDatabase();
//创建游标对象进行遍历数据库并将其中的数据拿出来
	Cursor cursor = db.query("message", null, null, null, null, null, null);
	if (null != cursor && cursor.getCount() > 0) {
	    while (cursor.moveToNext()) {
		HashMap<String, Object> map = new HashMap<String, Object>();
		for (int i = 0; i < cursor.getColumnCount(); i++) {
		    map.put("id", cursor.getString(0));
		    map.put("title", cursor.getString(1));
		    map.put("content", cursor.getString(2));
		}
		listDate.add(map);
	    }
	}
//在使用完之后将游标和数据库都进行关闭
	cursor.close();
	db.close();

下面是实现删除数据库中的内容,将数据库中的内容全部删除,执行数据库的操作的时候最后要将数据库进行关闭

SQLiteDatabase db = dBOpenHelper.getWritableDatabase();
			db.delete("message", null, null);
			db.close();

根据id或者其它的条件将指定列的数据进行删除,

<pre name="code" class="java">//首先获得可以进行编辑的数据库
SQLiteDatabase db = dBOpenHelper.getWritableDatabase();
/*使用Android自身提供的方法,第一个参数是所要删除数据的数据库的表名,第二个是删除所要依据的列名,然后通过一个字符串数组将所要删除的数据放在里面,这样便可以实现将符合要求的数据删除掉
*/
			db.delete("message", "id=?", new String[] { id_ });
			db.close();



向数据库中添加数据,contentValues 是用来存储键值的,将其中的值填充后,然后将其插入数据库中

 db = new DBOpenHelper(context).getWritableDatabase();
	ContentValues values = new ContentValues();
	values.put("title", notifiShowRlt.getTitle());
	values.put("content", notifiShowRlt.getContent());
	db.insert("message", null, values);
	db.close();



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值