Android数据库操作工具类分享
时间:2022-07-27
本文章向大家介绍Android数据库操作工具类分享,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文实例为大家分享了Android数据库操作工具类的具体代码,供大家参考,具体内容如下
HistoryDAO
public class HistoryDAO {
private DBConnection dbc = null;
private SQLiteDatabase db = null;
private Context context;
//数据库上下文
public HistoryDAO(Context context) {
this.context = context;
}
//打开数据库
public HistoryDAO open() {
dbc = new DBConnection(context);
db = dbc.getWritableDatabase();
return this;
}
//关闭数据库
public void closeAll() {
db.close();
dbc.close();
}
// // 增加
// public void add(Search_HistoryData data, String type) {
// open();
// ContentValues values = new ContentValues();
// values.put("content", data.getContent());
// values.put("type", data.getType());
// db.insert("history", null, values);
// closeAll();
// }
// 增加
public void add(Search_HistoryData data, String tableName) {
open();
ContentValues values = new ContentValues();
values.put("content", data.getContent());
db.insert(tableName, null, values);
closeAll();
}
// 增加 工具类的最后五个专用
public void addLawTool(Search_HistoryData data, String tableName) {
open();
ContentValues values = new ContentValues();
values.put("content", data.getContent());
values.put("_id", data.getId());
db.insert(tableName, null, values);
closeAll();
}
// 全查询
public List getAll(String TableName) {
open();
List ar = new ArrayList();
Cursor c = db.rawQuery("select * from " + TableName, null);
while (c.moveToNext()) {
Map map = new HashMap();
map.put("_id", c.getInt(c.getColumnIndex("_id")));
map.put("content", c.getString(c.getColumnIndex("content")));
ar.add(map);
}
closeAll();
return ar;
}
// 删除 根据id删除
public void delete(String tableName, int uid) {
open();
db.delete("history", "uid=" + uid, null);
closeAll();
}
//清空表中所有数据
public void delete(String tableName) {
open();
db.delete(tableName, null, null);
closeAll();
}
//判断是否存在
public boolean searchResult(String tableName, String key) {
open();
Boolean booleans =
db.rawQuery("select * from " + tableName + " where content = ?", new String[]{key}).moveToNext();
closeAll();
return booleans;
}
//根据库查询表字段
public boolean searchResultToType(String content, String type) {
open();
Boolean booleans =
db.rawQuery("select * from history where content = ? and type = ?", new String[]{content, type}).moveToNext();
closeAll();
return booleans;
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助。
- JQuery JCshare 0.1 分享插件
- Java中的即时编译(Just-in-time compilation)
- 无尽的忙碌换来幸福的日子
- 消费者驱动的微服务契约测试套件:Spring Cloud Contract
- 自己做的一个小程序 可采集、导出、模板、配置
- 分布式消息队列 RocketMQ 源码分析 —— Message 拉取与消费(上)
- .NET反射、委托技术与设计模式
- 我最常用的Intellij IDEA快捷键
- 用Js控制TextBox不能复制粘贴
- 漫画:什么是单例模式?(整合版)
- 保护连接字符串
- IntelliJ IDEA 复杂的重构技巧(二)
- Spring Boot中使用Flyway来管理数据库版本
- 缓存穿透、缓存并发、热点缓存之最佳招式
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- springboot源码解析(四)
- 第2天:网易2018年校园招聘NLP算法工程师笔试试卷分析(二)
- Windows下Scoop安装、配置与使用
- Flutter免费iOS真机调试 AndroidStudio iPhone真机运行教程
- Flutter GridView 网格控件
- Flutter ListView 下拉刷新,上拉加载更多
- Flutter问题:import 'package:english_words/english_words.dart'失败
- 第17天:NLP实战(一)——爬取语料及其简单分析
- 搞懂 Redis 缓存穿透、击穿、雪崩
- win10_opencv4.2_cuda11_vs2019 编译
- (Demo分享)利用JavaScript(JS)做一个可输入分钟的倒计时钟功能
- Flutter ListView 列表控件
- 第18天:NLP实战(二)——用DNN实现手势识别
- 「0821更新」Flutter入门系列教程汇总
- (Demo分享)利用JavaScript(JS)实现一个九宫格拖拽功能