- 注重版权,转载请注明原作者和原文链接
- 作者:Bald programmer
文章目录
*
–
+ 一、介绍
+ 二、实现原理
+ 三、大致过程
+ 四、代码实现
+
*
–
+ 创建 MyHelper 类继承SQLiteHelper
+ 添加数据
+ 删除数据
+ 修改数据
+ 查询数据
+ 五、功能展示
+ 六、db文件
+ 七、结尾
一、介绍
在 Android 开发中,我们需要存储大量的数据,用户信息、聊天信息、本地记录等等.
而 Android 系统提供了 SQLite 数据库存储,SQLite 数据库是一款轻型的数据库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎
SQLite数据库现在经常用到,如聊天记录存储、购买商品记录等等.
二、实现原理
1、创建 MyHelper 类继承SQLiteOpenHelper类,复写onCreate()方法和onUpgrade()方法.
方法作用onCreate()执行SQL语句,创建表onUpgrade数据库版本号增加
2、创建 MyHelper 对象,会在本地文件/data/目录下新建一个db文件.
3、设计增删改查功能模块
三、大致过程
; 四、代码实现
创建 MyHelper 类继承SQLiteHelper
- 复写onCreate()和onUpgrade()方法
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import androidx.annotation.Nullable;
public class MyHelper extends SQLiteOpenHelper {
public MyHelper(@Nullable Context context) {
super(context,"base.db",null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE data(ID VARCHAR(20) NOT NULL PRIMARY KEY, NAME VARCHAR(20) NOT NULL)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
添加数据
- 1、创建 MyHelper 对象
- 2、创建 SQLiteDatavase 对象
- 3、创建 ContentValues 对象
- 4、向 ContentValues 对象添加数据
- 5、调用 insert 函数
private void Add(String ID, String NAME){
MyHelper myHelper = new MyHelper(this);
SQLiteDatabase db = myHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("ID",ID);
values.put("NAME",NAME);
db.insert("data",null,values);
db.close();
}
删除数据
- 1、创建 MyHelper 对象
- 2、创建SQLiteDatavase 对象
- 3、调用delete函数
private void Delete(String ID){
MyHelper myHelper = new MyHelper(this);
SQLiteDatabase db = myHelper.getWritableDatabase();
db.delete("data","ID=?", new String[] {ID+""});
db.close();
}
修改数据
- 1、创建 MyHelper 对象
- 2、创建 SQLiteDatavase 对象
- 3、创建 ContentValues 对象
- 4、向 ContentValues 对象赋值
- 5、调用 update 函数
private void Modify(String ID, String NAME){
MyHelper myHelper = new MyHelper(this);
SQLiteDatabase db = myHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("NAME",NAME);
db.update("data",values,"ID=?", new String[] {ID});
db.close();
}
查询数据
- 1、创建 MyHelper 对象
- 2、创建 SQLiteDatavase 对象
- 3、创建游标
- 4、调用 query 函数
- 5、调用 getString 函数循环获取数据
private void Find(String ID){
MyHelper myHelper = new MyHelper(this);
SQLiteDatabase db = myHelper.getReadableDatabase();
Cursor cursor = db.query("data", null, "ID=?", new String[] {ID+""}, null, null ,null);
if (cursor.getCount() != 0){
while (cursor.moveToNext()){
String id = cursor.getString(cursor.getColumnIndex("ID"));
String name = cursor.getString(cursor.getColumnIndex("NAME"));
Show.setText(Show.getText().toString()+"\n"+"ID:"+id+" "+"NAME:"+name);
}
}
}
五、功能展示
这里我添加了三个数据(A001,A002,A003),就不完全展示了,大家可以去自行试试
; 六、db文件
创建 MyHelper 对象的时候会产生一个 db 文件,想查看自己数据的话可以调出 db 文件,通过SQLite工具打开查看
(1)依次点击 View –>> Tool Windows –>> Device File Explorer
(2)这时候在右边会显示目录,依次点击 data –>> data –>> com.example.你的包名(这里我的是ceshi2)
(3)找到自己的目录之后,点击 databases,就能看的自己的db文件
(6)找到刚刚保存的地址,选择db文件,点击打开,就能看到数据了
七、结尾
注:如没有SQLite Expert Professional 工具的,可以点击链接自行下载 官网下载
本次案例只涉及到简单的增删改查,并没有设计逻辑语句,先让大家熟悉一下SQLite的操作方法
后续会出一篇 SQLite实战教学(账号注册、密码判断、账号检测、密码修改等)
本次案例源码可以点击下方链接免费下载
https://download.csdn.net/download/weixin_47971206/18801887
- 本次文章分享就到这,有什么疑问或有更好的建议可在评论区留言,也可以私信我
- 感谢阅读~
Original: https://blog.csdn.net/weixin_47971206/article/details/116904171
Author: 全栈小袁
Title: Android Studio—— SQLite数据库存储
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/816592/
转载文章受原作者版权保护。转载请注明原作者出处!