Android学习笔记--SQLite使用方法


SQLite介绍
http://www.sqlite.org    官方网站
小型关系数据库



SQLiteOpenHelper使用方法
getReadableDatabase()
getWritableDatabase()
onCreate(SQLiteDatabase db)
onOpen(SQLiteDatabase db)
onUpgrade(SQLiteDatabse db , int oldVersion , int newVersion)
Close();




// DatabaseHelper所为一个访问SQLite的助手类, 提供两个方面的功能
// 第一, getReadableDatabase() 和 getWritableDatabasr() 可以获得SQLiteDatabase对象
// 第二, 提供onCreate 和 onUpgrade 两个回调函数 , 允许我们在创建和升级数据库时, 进行操作
例 : public class DatabaseHelper extends SQLiteOpenHelper {
  // 数据库版本号
Private static final int VERSION = 1;

// 必须的构造函数
Public DatabaseHelper (Context context , String name , CursorFactory factory , int version) {
Super(context , name , factory , version);
}

Public DatabaseHelper (Context context , String name ,  int version) {
Super(context , name , null , version);
}

Public DatabaseHelper (Context context , String name) {
Super(context , name , null , VERSION);
}

Public void onCreate(SQLiteDatabase db) {
System.out.println("create a database");

Db.execSQL("create table user(id int , name varchar(20))");
}

Public void onUpgrade(SQLiteDatabase db) {
System.out.println("update a database");
}
}



对SQLite的增 删 查 改

Activity操作数据库  例 :


Android学习笔记--SQLite使用方法 - �o�咯Y�K�`褂 - 菁华隐没�Y�K芳流歇绝


1 . 声明控件对象(略)
2 . 获得控件对象(略)
3 . 绑定事件(略)
4 . 创建监听器对象 (调用DatabaseHelper)



// 创建一个数据库
Public void onClick(View v) {
// 当前的activity , 还有数据名
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this , "test_db");
SQLiteDatabase db = dbHelper.getReadableDatabase();  // 此时才会创建一个数据库
}



// 修改一个数据库
Public void onClick(View v) {
// 当前的activity , 还有数据名
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this , "test_db" , 2);  // 版本号变了
SQLiteDatabase db = dbHelper.getReadableDatabase();
}



// 插入操作
Public void onClick(View v) {
// 生成ContentValues对象
ContentValues values = new ContentValues();
// key是列名 , value 是值 , 值必须对应数据库列数据类型
Values.put("id" , 1);
Values.put("name" , "zhangsan" );
// 当前的activity , 还有数据名
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this , "test_db"); 
// 得到可写数据库
SQLiteDatabase db = dbHelper.getWritableDatabase();
// 1.表名 2,不允许空列 3, 值
Db.insert("user", null , values);
}



// 更新操作 
Public void onClick(View v) {
// 当前的activity , 还有数据名
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this , "test_db"); 
// 得到可写数据库
SQLiteDatabase db = dbHelper.getWritableDatabase();  
// 1.表名 2,不允许空列 3, 值
// 生成ContentValues对象
ContentValues values = new ContentValues();
// key是列名 , value 是值 , 值必须对应数据库列数据类型
Values.put("name" , "zhangsanfeng" );
// 1.表名 2. 值 , 3 , where子句 (不包括where) 4, 为占位符赋值
Db.update("user", values , "id=?" , new String[] {"1"});
}



// 查询数据库
Public void onClick(View v) {
// 当前的activity , 还有数据名
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this , "test_db");  // 版本号变了
SQLiteDatabase db = dbHelper.getReadableDatabase();
// 1, 表名 2 所要查询的列名 3 , 筛选器 4 , 筛选器值 5 .groupby  6 . having  //7 orderby  创建游标对象读取数据
Cursor cursor = db.query("user" , "new String[] {"id" , "name"}" , "id=?")
While (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->" + name);
}
}



// 删除操作 
Public void onClick(View v) {
// 当前的activity , 还有数据名
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this , "test_db"); 
// 得到可写数据库
SQLiteDatabase db = dbHelper.getWritableDatabase();  
// 1.表名 2. 值 , 3 , where子句 (不包括where) 4, 为占位符赋值
Db.delete("user", values , "id=?" , new String[] {"1"});
}


使用adb访问SQLite (linux命令行调试) abd shell = > ls -i = > cd data  = > 创建了数据库之后 = > 报名.数据库名 => 即可进入该SQLite

SQLite 语句  .schema  // 查看所有表

Linux知识补习 : cd 目录  (进入目录)  ls (查看当前目录)

你可能感兴趣的:(Android学习笔记--SQLite使用方法)