SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能。此外它还是开源的,任何人都可以使用它。许多开源项目((Mozilla, PHP, Python)都使用了 SQLite
Android 开发中使用 SQLite 数据库
Activites 可以通过 Content Provider 或者 Service 访问一个数据库。下面会详细讲解如果创建数据库,添加数据和查询数据库。
创建数据库
Android 不自动提供数据库。在 Android 应用程序中使用 SQLite,必须自己创建数据库,然后创建表、索引,填充数据。Android 提供了 SQLiteOpenHelper 帮助你创建一个数据库,你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。SQLiteOpenHelper 的子类,至少需要实现三个方法:
构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。
onCreate()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。
onUpgrage() 方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。
1 看 sqlite数据库 可以使用eclipse的插件DDMS,或者Android工具包中的adb工具来查看。sqlite数据库在安卓项目中的位置是/data/data/项目包/databases中。
2 在这里呢 演示使用eclipse插件来看。在Eclipse安装好插件,找到 DDMS
2选中DDMS 点击ok,显示File Explorer窗口,找到/data/data/
3 打开databases,就能看到sqlite数据库文件了。
使用sqlite界面管理工具如sqlite administrator、sqlite man打开就可以了
这种方式通常连接一个外部的数据库,第一个参数就是数据库文件,这个数据库不是当前项目中生成的,通常放在项目的Assets目录下,当然也可以在手机内,如上面参数那个目录,前提是那个文件存在且你的程序有访问权限。
另一种使用数据库的方式是,自己创建数据库并创建相应的数据库表,参考下面的代码:
public class DatabaseHelper extends SQLiteOpenHelper {
//构造,调用父类构造,数据库名字,版本号(传入更大的版本号可以让数据库升级,onUpgrade被调用)
public DatabaseHelper(Context context) {
super(context, DatabaseConstantDATABASE_NAME, null, DatabaseConstantDATABASE_VERSION);
}
//数据库创建时调用,里面执行表创建语句
@Override
public void onCreate(SQLiteDatabase db) {
dbexecSQL(createVoucherTable());
}
//数据库升级时调用,先删除旧表,在调用onCreate创建表
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
dbexecSQL("DROP TABLE IF EXISTS " + DatabaseConstantTABLE_NAME);
onCreate(db);
}
//生成 创建表的SQL语句
private String createVoucherTable() {
StringBuffer sb = new StringBuffer();
sbappend(" CREATE TABLE ")append(DatabaseConstantTABLE_NAME)append("( ")append(“ID”)
append(" TEXT PRIMARY KEY, ")
append(“USER_ID”)append(" INTEGER, ")append(“SMS_CONTENT”)append(" TEXT ) ");
return sbtoString();
}
}
继承SQLiteOpenHelper并实现里面的方法
之后:
//得到数据库助手类
helper = new DatabaseHelper(context);
//通过助手类,打开一个可读写的数据库连接
SQLiteDatabase database = helpergetReadableDatabase();
//查询表中所有记录
databasequery(DatabaseConstantTABLE_NAME, null, null, null, null, null, null);
以上就是关于android上如何使用sqlite数据库全部的内容,包括:android上如何使用sqlite数据库、Android开发怎么查看和管理sqlite数据库、android怎么连接sqlite数据库。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)