安卓开发中SQLite的使用

在安卓开发的过程中,经常会对本地数据进行存储,从而使开发者能够顺利的调用本地数据从而达到测试整个项目的目的。在这个过程中,SQLite就起到了决定性的作用。

SQLite作为一款非常流行的嵌入式的数据库,它支持SQL查询,并且只用很少的内存。基于以上几点,Android在运行时便集成了SQLite,因此每个Android应用程序都可以使用SQLite数据库,从而达到对数据的增、删、改、查的目的。

在安卓开发的过程中,Android提供了一些新的API来使用SQLite数据库,数据库存储在data/<项目文件夹>/databases/下。

Android开发中使用SQLite数据库

public class DatabaseHelper extends SQLiteOpenHelper{
 DatabaseHelper(Context context,String name,CursorFactory cursorFactory,int version)
 {
    super(context,name,cursorFactory,version);
 }
 @override
 public void onCreate(){
    //创建数据库后,对数据库操作
 }
 @override
 public void onUpgrade(SQLiteDatabase db,int oldversion,int newversion){
    //更改数据库版本的操作
 }
 @override
 public void onOpen(SQLiteDatabase db){
    super.onOpen(db);
    //TODO 每次成功打开数据库后首先被执行
 }
}

创建表和索引

db.execSQL("CREATE TABLE mytable(_id INTEGER PRIMARY KEY AUTOINCREMENT,title TEXT,value REAL);");

这条语句的含义是创建一个名为mytable的表,表有一个列名为_id,且为主键,该值会自动增长,还有两列分别为title和value。SQLite会自动为主键列创建索引。
给表添加数据
主要有两种方法,一种是使用execSQL()方法来执行insert()、update()、detete()方法。该方法适用于所有不返回结果的SQL语句。例如:

db.execSQL("INSERT INTO widgets(name,inventory)"+"VALUES('Sprocket',5)");

另一种方法是直接调用SQLiteDatabase对象的方法:

ContentValues cv=new ContentValues();
cv.put(Constants.TITLE,"example title");
cv.put(Constants.VALUE,SensorManager.GRAVITY_DEATH_START_I);
db.insert("mytable",getNullColumnHack(),cv);

查询数据库

Cursor c=db.rawQuery(
   "SELECT name FROM sqlite_master WHERE type='table' AND name='mytable'",null);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值