# BaseSQLite **Repository Path**: benyanyi/BaseSQLite ## Basic Information - **Project Name**: BaseSQLite - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-20 - **Last Updated**: 2025-07-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # BaseSQLite ![](https://img.shields.io/badge/basesqlite-1.1.7-green) 介绍 --- ##### 旨在将sqlite使用变得简单化,处理数据时链式调用 ##### 注意1.1.1版本转成androidx项目 使用 --- ### 根目录下build.gradle添加Maven地址 ~~~ repositories { maven { url "http://maven.keleyanyi.com/repository/benyanyi/" } } ~~~ ### module 下添加 ~~~ implementation 'com.yanyi.benyanyi:basesqlite:1.1.7' ~~~ 或者 ~~~ com.yanyi.benyanyi basesqlite 1.1.7 aar ~~~ 推荐一个查看数据库的开源库[Android-Debug-Database](https://github.com/amitshekhariitbhu/Android-Debug-Database)
### 使用介绍 #### 配置数据库信息 ~~~ TableDaoImpl dao = new TableDao.Builder().setVersion(your version).setClasses(your table class).builder(context); ~~~ #### 配置表信息 ~~~ TableSessionImpl session = dao.getSession(your TableBean.class); ~~~ #### 条件及逻辑处理 ~~~ ConditionImpl conditionImpl = session.where();//获取条件及逻辑处理类 conditionImpl = conditionImpl.sort(条件);//排序条件,可不选 OperationImpl operation = conditionImpl.operation((your condition)[可不填])//获取逻辑处理类 ~~~ ##### 条件属性(your condition) * sort(String field,TableSort sort) 排序方式(field表示依据的列明) ##### 配置类介绍 * ConditionMsg(条件配置类):field(列字段名)、value(当前列对应的值)、Condition(条件判断)、TableNexus(多个时用于当前条件是and还是or) * Condition(条件判断):DETAILS(默认为eq相等)、EQ(相等)、NOT_EQ(不等)、GREATER(大于)、LESS(小于)、LIKE(包含) * TableNexus(多条件并且和或者):DETAILS(默认值(and))、AND(and并且)、OR(or或者) * TableSort(排序方式):DETAILS(默认排序)、ASCENDING(正序)、DESCENDING(倒序) ##### 添加数据(insert) ~~~ operation.insert().find(your data); ~~~ ##### 删除数据(delete) 可删除全部(findAll),也可只删除第一条(findFirst)或最后一条(findLast) ~~~ operation.delete().findAll(); ~~~ ##### 查询数据(query) 可查询所有(findAll),也可查询第一条(findFirst)或最后一条(findLast) ~~~ operation.query().findAll() ~~~ ##### 更改数据(update) 可更改所有(findAll(your change data)),也可更改第一条(findFirst(your change data))或最后一条(findLast(your change data)) ~~~ operation.update().findAll(your change data); ~~~ ##### 修改或者添加(changeOrAdd),必须设置your condition 可在不确定数据是否存在时修改数据,数据存在则进行修改,数据不存在是则进行添加,可处理所有数据(findAll(your changeOrAdd data)),也可处理第一条数据(findFirst(your changeOrAdd data))或最后一条数据(findLast(your changeOrAdd data)) ~~~ operation.changeOrAdd().findAll(your changeOrAdd data); ~~~ #### 注解声明 * @TableBean  声明当前类为表结构类,表名为默认为类名,设置value值可更改自定义表明。 * @ID  声明属性名为表主键id,默认id不自增,设置increase为true则自增 * @NotNull  声明当前属性对应的表列值不能为空 * @ColumnName  声明表中列名,列名为空时使用变量名,不能为null * @NotColumn  声明当前变量不设置能列,默认使用为true值(不为列),设置notColumn值变更是否不为列 #### 回调类介绍 ##### TableSessionImpl\(数据库操作类) * ConditionCallBack\ where();返回条件处理类,用于设置增删查改前的条件添加,会出现条件缓存的问题,除非重新获取TableSessionCallBack * ConditionCallBack\ where(boolean isCleanCondition);返回条件处理类,用于设置增删查改前的条件添加,isCleanCondition(是否清空缓存的条件) * SQLiteDatabase getSQLiteDatabase();返回数据库操作base * boolean tableIsExist(String tableName);判断某张表是否存在 * String getDBPath();获取数据库路径 * void close();关闭数据库 ##### OperationImpl\(增删查改类) * cleanCondition() 清除条件(包括缓存) * insert() 插入数据 * delete() 删除数据 * query() 查询数据 * update() 修改数据 * changeOrAdd() 根据条件修改数据,如果没有则添加数据 更新记录 ---- * 2021-10-02 提交1.1.7版本,添加数据库锁 * 2021-08-27 提交1.1.6版本,升级gradle版本,修改maven地址 * 2020-08-07 提交1.1.5版本,使表在TableDao的初始化阶段即完成创建升级操作 * 2020-06-04 提交1.1.4版本,修改条件属性方法,将多个方法统一调用,删除是否要清除缓存判断及方法,不会产生缓存条件 * 2020-05-18 提交1.1.3版本,添加创建多表方法 * 2020-05-16 提交1.1.2版本,修复1.1.1版本中内部类问题 * 2020-05-15 提交1.1.1版本,修复条件缓存问题,添加是否要清除缓存判断及方法,将android support转成androidx支持,并将Maven库存放到个人服务器上 * 2020-01-10 提交1.1.0版本,优化代码,修复个别问题(该版本被误删) * 2019-12-20 提交1.0.8版本,修复条件问题 * 2019-12-03 提交1.0.7版本,修复修改数据时报缺少set和get方法问题 * 2019-06-26 提交1.0.5版本,删除重复方法 * 2019-06-12 提交1.0.4版本,优化方法,更改包名,用于统一开源库包名 * 2019-05-20 提交1.0.3版本,优化数据处理方法,添加获取数据库地址方法,添加获取SQLiteDatabase方法,添加数据库关闭方法,添加判断某张表是否存在方法,使用TableBean注解的类中变量不再强制需要添加set和get方法 * 2019-04-04 提交1.0.1版本,添加有数据时修改,没数据时添加操作 * 2019-04-03 提交1.0.0版本,第一次更新