数据库代码
public class DBHelper {
public static final String DB_NAME = "opinion_db";
public static final String TABLE_NANE = "opinion_table";
public static final int VERSION = 3;
public static SQLiteDatabase db;// 只创建一次
private OpenHelper openHelper;
private final Context context;
public DBHelper(Context context) {
this.context = context;
}
public void openDB() {
if (db == null) {
openHelper = new OpenHelper(context, DB_NAME, null, VERSION);
db = openHelper.getWritableDatabase();
System.out.println("create database!");
}
}
// 插入
public long insert(OpinionModal opinion) {
return db.insert(TABLE_NANE, null, putVaule(opinion));
}
// 查询
@SuppressWarnings("unchecked")
public ArrayList getAll() {
ArrayList list = new ArrayList();
Cursor cursor = null;
cursor = db.query(TABLE_NANE, new String[] { "_id", "opinion"},
null, null, null, null, null);
while (cursor.moveToNext()) {
list.add(mapPut(cursor));
}
return list;
}
// 根据_id删除单个或多个
public void delete(int _id) {
db.delete(TABLE_NANE, "_id=?", new String[] { String.valueOf(_id) });
}
// 删除所有
public void deleteAll() {
db.delete(TABLE_NANE, null, null);
}
// 删除标记的数据
public void deleteMarked(ArrayList<Integer> deleteId) {
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append("_id=");
for (int i = 0; i < deleteId.size(); i++) {
if (i != deleteId.size() - 1) {
stringBuffer.append(deleteId.get(i) + " or _id=");
} else {
stringBuffer.append(deleteId.get(i));
}
}
db.delete(TABLE_NANE, stringBuffer.toString(), null);
}
// 封装了Map的put方法
private Map<String, Object> mapPut(Cursor cursor) {
// TODO Auto-generated method stub
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("_id", cursor.getString(cursor.getColumnIndex("_id")));
map.put("opinion", cursor.getString(cursor.getColumnIndex("opinion")));
return map;
}
// 封装ContentValues的put方法
public ContentValues putVaule(OpinionModal opinion) {
ContentValues values = new ContentValues();
values.put("opinion", opinion.opinion);
return values;
}
class OpenHelper extends SQLiteOpenHelper {
public OpenHelper(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "create table "+ TABLE_NANE+ "("+ "_id integer primary key autoincrement,opinion text"+ ")";
db.execSQL(sql);
}
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
String sql = "drop table if exists" + DB_NAME;
db.execSQL(sql);
openHelper.onCreate(db);
}
}
}
分享到:
相关推荐
在IT行业中,"简单增删改查"是数据库操作的基础,是任何Web应用程序不可或缺的部分。这里,我们将深入探讨如何在基于Struts2的系统中,利用MySQL数据库进行基本的CRUD(Create、Read、Update、Delete)操作,并简单...
这个"ASP.NET Repeater 简单增删改查分页例子"是一个专门为初学者设计的示例项目,它演示了如何利用Repeater控件以及三层架构来实现一个完整的数据操作和分页功能。 首先,我们来看Repeater控件。Repeater是最基本...
这个"php简单增删改查"项目是你一年前练习基础数据库操作的成果,主要涵盖了MySQL数据库、PHP数据对象(PDO)以及HTML的基础应用。下面我们将深入探讨这些知识点。 首先,MySQL是世界上最流行的开源关系型数据库管理...
本文将基于标题"C#简单增删改查"和描述中提及的环境,即Visual Studio 2008 (VS2008) 和 SQL Server 2005,详细讲解如何使用C#进行数据库的增删改查操作。 首先,我们需要创建一个数据库连接。在C#中,我们通常使用...
本篇文章将详细讲解如何利用C#语言实现DataGrid的简单增删改查功能,以便在用户管理场景中进行数据操作。 首先,我们需要创建一个User Management系统,这个系统可能包含用户的基本信息,如用户名、密码、邮箱等。...
在这个“ASP.NET实现简单增删改查功能”的主题中,我们将深入探讨如何利用ASP.NET的核心组件,如Visual Studio(VS)集成开发环境和SQL Server数据库,来实现基本的数据操作。 首先,我们需要了解ASP.NET MVC或Web ...
"重写hibernate的session简单增删改查"是一个针对初学者的实践教程,旨在帮助理解如何在Hibernate中自定义Session的操作,以便更好地控制数据库交互。 一、Hibernate Session Hibernate的Session是与数据库交互的...
本项目"基于SSM框架的简单增删改查"旨在实现一个留言板功能,包括留言的增加、删除、修改和查询,同时还提供了分页和模糊查询的功能。以下是关于这些知识点的详细说明: **1. Spring框架**: Spring是Java企业级...
在本教程中,我们将深入探讨如何使用Spring Boot、JPA(Java Persistence API)以及Thymeleaf模板引擎实现一个简单的数据库操作,包括增删改查(CRUD)。Spring Boot简化了Java应用程序的开发过程,而JPA是Java平台...
**WPF实现简单增删改查** Windows Presentation Foundation(WPF)是Microsoft.NET Framework的一部分,用于构建具有丰富用户界面的应用程序。在这个项目中,“WPF实现简单增删改查”是一个基础教程,它展示了如何...
这个“ssh的简单增删改查”示例旨在演示如何在Web应用中利用SSH框架进行基本的数据操作。在这个小例子中,我们将探讨SSH框架的核心概念以及如何通过Ajax技术实现异步的删除操作。 1. **Struts**:Struts是一个MVC...
php+mysql简单增删改查,配置好数据库连接地址直接导入运行php即可,
本案例“简单增删改查功能案例”利用了Silverlight、RIA Services以及SQL to LINQ技术,构建了一个直观且实用的用户界面,实现了对数据的高效管理。 首先,让我们详细了解这些技术: 1. **Silverlight**:这是一种...
这个“ssm简单增删改查小系统”是一个适合初学者练习和学习的基础项目,涵盖了SSM框架的基本使用和数据库操作。 1. **Spring框架**:Spring是Java企业级应用开发的核心框架,提供了依赖注入(DI)和面向切面编程...
在这个“ssh实现简单增删改查”的案例中,我们将深入理解这三个框架如何协同工作来完成基本的数据操作。 **Struts2** 是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,它简化了开发过程,提供了丰富...
基于SSM的简单增删改查 之前简单了解了Spring后就想找个简单的项目练一下,于是就有了这个简单的增删改查,个人水平有限. - 基础框架-ssm(Spring + SpringMVC + MyBatis) - 数据库-MySQl - 前端框架-bootstrap快速搭建...
**简单增删改查操作** 在ASP.NET MVC中,使用EF实现增删改查(CRUD)操作相对简单。以下是一般步骤: 1. **创建模型类**:定义一个表示数据库表的类,例如`Student`,包含属性如`Id`、`Name`和`Age`。 2. **配置...
本项目“包含上传图片的简单增删改查Demo”提供了一个完整的示例,展示了如何在一个应用程序中实现基本的数据操作(增删改查)以及图片上传功能。下面将详细解析其中涉及的关键知识点。 首先,增删改查(CRUD,...
在本项目"KendoUI简单增删改查源代码"中,我们看到开发者利用Kendo UI 的数据网格(Grid)组件实现了一个基本的数据管理功能,包括添加、删除、修改和查询操作。 这个项目主要基于C#后端,可能采用了ASP.NET MVC或...
在深入探讨MyBatis的简单增删改查操作之前,我们先了解一下MyBatis的基本概念和架构。 MyBatis的核心组件包括:XML配置文件、Mapper接口及Mapper XML文件、SqlSessionFactory和SqlSession。XML配置文件主要用于设置...