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使用方法 - 無牽℡↘嘸褂 - 菁华隐没℡↘芳流歇绝


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 (查看当前目录)





     本文转自My_King1 51CTO博客,原文链接:http://blog.51cto.com/apprentice/1360571,如需转载请自行联系原作者


相关文章
|
存储 数据库连接 数据库
Android数据存储:解释SQLite数据库在Android中的使用。
Android数据存储:解释SQLite数据库在Android中的使用。
146 0
|
8月前
|
前端开发 数据处理 Android开发
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
201 8
|
数据库 Android开发 数据安全/隐私保护
在 Android Studio 中结合使用 SQLite 数据库实现简单的注册和登录功能
在 Android Studio 中结合使用 SQLite 数据库实现简单的注册和登录功能
370 2
|
SQL Linux 数据库
Linux上sqlite的安装和使用方法以及在QT中如何使用sqlite&笔记总结
Linux上sqlite的安装和使用方法以及在QT中如何使用sqlite&笔记总结
|
XML Java API
30. 【Android教程】吐司提示:Toast 的使用方法
30. 【Android教程】吐司提示:Toast 的使用方法
532 2
|
SQL 存储 数据库
48. 【Android教程】数据库:SQLite 的使用
48. 【Android教程】数据库:SQLite 的使用
229 1
|
架构师 网络协议 算法
Android高级架构师整理面试经历发现?(大厂面经+学习笔记(1)
Android高级架构师整理面试经历发现?(大厂面经+学习笔记(1)
|
Android开发
Android Service的两种使用方法
Android Service的两种使用方法
100 2
|
存储 缓存 数据库
Android之SQLite数据库使用详解
Android之SQLite数据库使用详解
1034 0
|
存储 数据库 Android开发
在 Android Studio 中结合使用 SQLite 数据库实现简单的注册和登录功能
在 Android Studio 中结合使用 SQLite 数据库实现简单的注册和登录功能
450 0