Android 数据库封装(SQLite)

news/2024/10/18 2:25:18/

Android 数据库操作(SQLite)

  • Android 数据库操作(SQLite)
    • 动态预览
    • 使用
      • 初始化
      • 生成表
      • 实体类
      • 插入数据
      • 批量插入
      • 删除数据
      • 删除全部
      • 修改数据
      • 查找(列表)
      • 查找(单条)
      • 条件查找(列表)
      • 条件查找(单条)
    • 源码

Android 数据库操作(SQLite)

数据库封装,方便使用。实现了数据库拷贝,实体类注解配置表及字段,并实现数据封装返回实体类,简化了sql编写和对游标的操作。

动态预览

使用

初始化

 QuickDb dbHelper;dbHelper = new QuickDb(this, "quick_db1.db", "quick_db2.db", null, 10, this);

生成表

  dbHelper.createTable(User.class);

实体类

@DBTable(name = "user")
public class User {@SQLObj(name = "id",constraints = @Constraints(primaryKey = true))private int id;@SQLObj(name = "name")private String name;@SQLObj(name = "header")private String header;private int age;private int sex;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getHeader() {return header;}public void setHeader(String header) {this.header = header;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public int getSex() {return sex;}public void setSex(int sex) {this.sex = sex;}
}

插入数据

 User user = new User();user.setName("张三");user.setAge(18);dbHelper.insert(user);

批量插入

List<Member> members = new ArrayList<>();
for (int i = 1; i <= 10; i++) {Member member1 = new Member();member1.setAge(i);member1.setName("M_" + i);members.add(member1);
}
dbHelper.insertArray(members);

删除数据

User user_d = new User();
user_d.setId(2);
dbHelper.delete(user_d);

删除全部

dbHelper.deleteAll(Member.class);

修改数据

Member member = members.get(0);
member.setName("sb");
member.setAge(18);
dbHelper.modify(member);

查找(列表)

Member member1 = new Member();
member1.setId(1);
List<Member> members = dbHelper.findArray(member1);

查找(单条)

User user_t = new User();
user_t.setId(3);
User user2 = dbHelper.findOne(user_t);

条件查找(列表)

List<Member> members = new ArrayList<>();
members = dbHelper.findArray("select * from member", Member.class);

条件查找(单条)

Member member = dbHelper.findOne("select * from member", Member.class);

源码

https://gitee.com/squirrelhuan/quick-db


http://www.ppmy.cn/news/1115800.html

相关文章

三步实现Mybatis(Mybatis-Plus)多数据源配置

前言 要实现多数据源可以采用dynamic-datasource或者mybatis-mate&#xff0c;本文就以dynamic-datasource为例 dynamic-datasource简介 springboot 快速集成多数据源的启动器 使用文档(opens new window) 支持 数据源分组 &#xff0c;适用于多种场景 纯粹多库 读写分离 一主…

【Python基础】P01S01 变量与字符串

P01S01 变量与字符串 变量变量的命名规则 字符串字符串的表达方法字符串的基本操作 数整数与浮点数数中下划线常量 注释 变量 变量的命名规则 变量名只能包含字母、数字和下划线&#xff1b; 变量名能以字母或下划线开头&#xff0c;但是不能以数字开头&#xff1b; 变量名不能…

Android使用glide时报错“ ����: �޷�����Fragment Glide.with(getContext()) ^ �Ҳ���and”

在gradle.properties中添加下面两行代码 即可 android.useAndroidXtrue android.enableJetifiertrue

Electron(v26.2.1)无法加载React Developer Tools(v4.28.0)

一开始按照electron官网上的 开发者工具扩展 教程设置React Developer Tools时&#xff0c;重启项目后并没有按照预期成功加载React Developer Tools&#xff0c;而且控制台报错&#xff1a; Permission scripting is unknown or URL pattern is malformed.查了下原因是因为Re…

前端开发中常见的跨域问题及解决方案

引言 在前端开发中&#xff0c;跨域问题是一个非常常见的问题。本文将详细介绍什么是跨域&#xff0c;常见的跨域场景&#xff0c;以及各种常用的跨域解决方案。 什么是跨域 跨域是指一个网页或者Web应用在浏览器中发起对另一个域名下资源的请求。由于浏览器的同源策略限制&…

docker快速安装redis,mysql,minio,nacos等常用软件【持续更新】

文章目录 redisnacosminiomysql redis ①拉取镜像 docker pull redis:7.0.5② 创建容器 docker run --restartalways -d -p 6379:6379 --name my-redis redis:7.0.5 redis-server --requirepass "PASSWORD"–requirepass “输入你的redis密码” nacos ①&#xf…

Python(八十七)函数的定义与调用

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

adb操作及常用命令

问题&#xff1a;no devices/emulators found&#xff1a;adb devices 没有连接的设备 解决方案&#xff1a; 大概率是因为usb调试功能没有打开&#xff0c;可以查看手机设备是否开启usb调试功能 Android若未开启&#xff0c;可通过设置-关于手机&#xff0c;连续点击版本号7…