安卓自带数据库用法

前言:安卓自带的数据库在我们实际项目中经常使用,以下主要讲解两方面,第一部分是数据的初始化化以及创建,第二部分主要讲数据库的增删查改

第一部分:数据库的初始化,库表的创建:

必须继承SQLiteOpenHepler

<span style="font-family:FangSong_GB2312;font-size:14px;">public class UccOpenHelper extends SQLiteOpenHelper{

public UccOpenHelper(Context context) {
		super(context, "ucc.db", null, 1);  //ucc.db代表创建的数据库 ,1代表版本号
		// TODO Auto-generated constructor stub
	}


	@Override
	public void onCreate(SQLiteDatabase db) {
		//表初始化
	    String sql = "create table info (_id integer primary key autoincrement,name text,phone text)";
		db.execSQL(sql);
	}

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		    
		//数据库版本更新
	}
</span>
}


第二部分:数据库的增删查改:

1、插数据进入数据库:

<span style="font-size:18px;">UccOpenHelper helper = new UccOpenHelper(this);
		SQLiteDatabase db = helper.getWritableDatabase();
		Random mRandom = new Random();
		ContentValues values = new ContentValues();
		values.put("name", "晓东"+i);
		values.put("phone", "8888"+i);
		long id = db.insert("info", null, values);
		db.close();
		if(id!=-1){
			++i;
			Toast.makeText(this, "第"+id+"行,插入成功", 0).show();
		}else{
			Toast.makeText(this, "插入失败", 0).show();
		}</span>

2、删除数据:


<span style="font-size:18px;">UccOpenHelper helper = new UccOpenHelper(this);
		SQLiteDatabase db = helper.getWritableDatabase();
		String [] args =  new String []{"1"};
		int flag = db.delete("info", null, null);
//		int flag = db.delete("info", "_id=?", args);
		if(flag==0){
			Toast.makeText(this, "删除失败", 0).show();
		}else{
			Toast.makeText(this, "删除了,第"+flag+"条记录", 0).show();
		}</span>


3、查询数据库:

第一个null:代表查询的字段,是一个字符串数组  ; 第二个null代表针对查询的条件是一个字符串,例如:“id=?” 第三个null代表:针对第二个字段过滤条件的值,是一个字符串数组,如:“new String [] = {"id=1"}

UccOpenHelper helper = new UccOpenHelper(this);

<span style="font-size:18px;">		SQLiteDatabase db = helper.getReadableDatabase();
		Cursor cursor = db.query("info", null, null, null, null, null, "_id desc", "5");
		while(cursor.moveToNext()){
			InfoBean bean = new InfoBean();
			int id = cursor.getInt(0);
			String name = cursor.getString(1);
			String phone = cursor.getString(2);
			bean.id = id+"";
			bean.name = name;
			bean.phone = phone;
			list.add(bean);
		}
		cursor.close();
		db.close();</span>

4、更改数据:

<span style="font-size:18px;">UccOpenHelper helper = new UccOpenHelper(this);
		SQLiteDatabase db = helper.getWritableDatabase();
		ContentValues values = new ContentValues();
		values.put("name", "大明");
		String [] args = {String.valueOf("_id = 1")};
		int result = db.update("info", values, "_id=?", args);
		db.update("info", values, null, null);
		db.close();
		if(result==0){
			Toast.makeText(this, "修改0条记录", 0).show();
		}else{
			Toast.makeText(this, "修改了第"+result+"记录", 0).show();
		}</span>






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值