Android存储之SQLite

我发现Android官方提供的帮助文档简直就是神器,我看了一下关于SQLite的描述,单词简单,语言易懂,就翻译了一小段,以后有时间会经常翻译。


Android有的数据存储跟windows几乎一样,大致有四种,第一是XML文件存储;第二种是外部存储,如小说之类的txt等文件存到sdcard上,通过IO操作进行存储;第三种是数据库存储,可以是大型数据库如MySQL,也可以是嵌入式的轻量级数据库SQLite;第四种就是网络存储。

Android为SQLite数据库提供了全力支持,在一个应用中任何被创建的数据库都可以在这个应用中通过数据库名字调用,但是这些数据库仅限本应用使用,不能跨应用。

使用SQLite数据库有很多方法,比如通过JDBC来操作。但是Android为我们创建了一个使用和管理数据库的助手类,使用这个助手类我们将可以很容易的访问数据库,这个助手类就是SQLiteOpenHelper类,我们只需要创建一个子类继承这个SQLiteOpenHelper这个父类并复写其中的onCreate()方法,这样你就可以通过自己创建的这个子类来执行SQLite中的命令来在数据库中创建表,我们来看如何创建这个助手类的子类:

public class DictionaryOpenHelper extends SQLiteOpenHelper{
	//声明了版本号是2
	private static final int DATABASE_VERSION = 2;
	//声明了将要在数据库中创建的表的名称是dictionary
	private static final String DICTIONARY_TABLE_NAME = "dictionary";
	//声明了创建表的语句,等会再的db.execSQL中直接调用DICTIONARY_TABLE_CREATE就行了
	private static final String DICTIONARY_TABLE_CREATE = "CREATE TABLE" + DICTIONARY_TABLE_NAME + "(" +KEY_WOED + "TEXT," + KEY_DEFINITION + "TEXT);";
	
	//重写了DictionaryOpenHelper这个类的构造函数
	DictionaryOpenHelper(Context context){
		super(context, DATABASE_NAME, null, DATABASE_VERSION);
	}

	//复写了SQLiteOpen这个父类的onCreate方法,在数据库中创建一张表
	@Override
	public void onCreate(SQLiteDatabase db){
		db.execSQL(DICTIONARY_TABLE_CREATE);
	}
}

通过上面的代码可以看出,你可以通过自己定义的构造函数来得到一个SQLiteOpenHelper的实例对象,再通过这个对象的gerWritableDatabase()方法和getReadableDatabase()方法来对数据库进行读或者写操作,调用这两个方法之后都会返回一个SQLiteDatabase的对象来表示这个数据库,你可以通过对这个SQLiteDatabase对象的操作来对数据库进行各种操作。比如,你可以调用SQLiteDatabase对象的query()方法来执行SQLite中的查询操作,每一条查询语句都会返回一个游标Cursor对象,这个对象指出查询到的数据在第几行。但是对于复杂的查询操作就要用到SQLiteQueryBuilder这个类。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值