入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

安卓自带数据库用法

创建时间:2016-08-22 投稿人: 浏览次数:2834

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

必须继承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>






阅读更多
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像