SQLite基本知识
SQLite介绍
SQLite是一个开源的、嵌入式关系型数据库。目前非常流行,firefox和iphone中也是使用的它,PHP5.0里面也包含了SQLite。
SQLite是嵌入式的
SQLite引擎不是在独立进程中运行,而是嵌入到程序中成为程序的一个部分。所以主要的通信协议是在编程语言内使用API调用,整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。
使用SQLite进行CRUD
Android提供了一个SQLiteOpenHelper,通过它可以容易的创建数据库,如下:
java代码:
- public class DBHelper extends SQLiteOpenHelper {
- public DBHelper(Context context,String name,SQLiteDatabase.CursorFactory factory,int version){
- // content是上下文环境,通常是一个Activity
- // name是数据库的名字,其实一个应用可以固定在这里写一个名字
- // factory是游标工厂,通常是null,使用系统提供的就可以了
- // version数据库版本,一般一个应用的版本号是一样的,也可以在这里固定写上
- super(context, name, factory, version);
- }
- public void onCreate(SQLiteDatabase db) {
- // 创建数据库过后的回调方法,通常用来创建表和插入初始数据
- String sql = "create table tbl_user (uuid varchar(20),name varchar(20))";
- db.execSQL(sql);
- }
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- // 更新数据库版本的操作
- }
- public void onOpen(SQLiteDatabase db) {
- super.onOpen(db);
- // 每次成功打开数据库后首先被执行的方法
- }
- }
实现新增功能,示例如下:
实现修改功能,示例如下:
java代码:
实现删除功能,示例如下:
实现查询功能,示例如下:
java代码:
- DBHelper dh = new DBHelper(Hello.this,"testDB",null,1);
- SQLiteDatabase db = dh.getWritableDatabase();
- Cursor c = db.query("tbl_user", new String[]{"uuid","name"},
- "",null, "", "", "","");
- while(c.moveToNext()){
- String uuid = c.getString(c.getColumnIndex("uuid"));
- String name = c.getString(c.getColumnIndex("name"));
- System.out.println("uuid="+uuid+" , name="+name);
- }
视频配套PPT,视频地址【
Android4开发入门经典独家视频课程】