首先创建一个类 DatabaseHelper 继承SQLiteOpenHelper帮助类,定义数据库版本,数据库名称,创建表名。

    private static final int DATABASE_VERSION = 1;  //数据库版本号

    private static final String DATABASE_NAME    = "Test";  //数据库名称

    private  static final String HR_B_DEPT          = "HR_B_DEPT";//部门

初始化

public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

创建表

@Override
public void onCreate(SQLiteDatabase db) { String sqldept = "create table HR_B_DEPT(INNERID String PRIMARY KEY ,DEPTCODE text,DEPTNAME text,PARENTID text)";
db.execSQL(sqldept);
}

创建一个类 UseDatabase,

public class UseDatabase {

    Context context;
DatabaseHelper dbhelper;
public SQLiteDatabase sqlitedatabase; public UseDatabase(Context context)
{
super();
this.context = context;
}
//打开数据库连接
public void opendb(Context context)
{
dbhelper = new DatabaseHelper(context);
sqlitedatabase = dbhelper.getWritableDatabase();
}
//关闭数据库连接
public void closedb(Context context)
{
if(sqlitedatabase.isOpen())
{
sqlitedatabase.close();
}
}
//插入表数据
public void insert (String table_name,ContentValues values)
{
opendb(context);
sqlitedatabase.insert(table_name, null, values);
closedb(context);
}
//更新数据
public int updatatable(String table_name,ContentValues values,int ID)
{
opendb(context);
return sqlitedatabase.update(table_name, values, " Type_ID = ? ", new String[]{String.valueOf(ID)});
}
//删除表数据
public void delete(String table_name)
{
opendb(context);
try{ sqlitedatabase.delete(table_name, null, null);
}catch(Exception e)
{
e.printStackTrace();
}
finally{
closedb(context);
}
}
}

在UseDatabase中添加一个方法,查表数据

    //查找数据
public JSONArray DeptArray()
{
JSONArray Items = new JSONArray();
try{
opendb(context);
String sql = "SELECT * FROM HR_B_DEPT";
Cursor c = sqlitedatabase.rawQuery(sql, null);
if(c!=null)
{
while(c.moveToNext())
{
JSONObject item = new JSONObject();
item.put("INNERID", c.getString(c.getColumnIndex("INNERID")));
item.put("DEPTCODE", c.getString(c.getColumnIndex("DEPTCODE")));
item.put("DEPTNAME", c.getString(c.getColumnIndex("DEPTNAME")));
Items.put(item);
}
c.close();
}
}catch(Exception e)
{
e.printStackTrace();
}
finally
{
closedb(context);
}
return Items;
}

在Activity中使用

UseDatabase usedatabase = new UseDatabase(context);
JSONArray list = new JSONArray();
list = usedatabase.DeptArray();

Android SQLITE 操作工具类的更多相关文章

  1. Android文件操作工具类(转)

    Android文件操作工具类(转)  2014/4/3 18:13:35  孤独的旅行家  博客园 这个工具类包含Android应用开发最基本的几个文件操作方法,也是我第一次发博客与大家分享自己写的东 ...

  2. Android Sqlite 工具类封装

    鉴于经常使用 Sqlite 数据库做数据持久化处理,进行了一点封装,方便使用. 该封装类主要支持一下功能 支持多用户数据储存 支持 Sqlite数据库升级 支持传入 Sql 语句建表 支持 SQLit ...

  3. android SQLite使用SQLiteOpenHelper类对数据库进行操作

    android SQLite使用SQLiteOpenHelper类对数据库进行操作 原文: http://byandby.iteye.com/blog/835580

  4. Android笔记——SQLiteOpenHelper类

    public 抽象类 SQLiteOpenHelper 继承关系 Java.lang.Object android.database.sqlite.SQLiteOpenHelper 类概要 这是一个辅 ...

  5. Android SQLite 通配符查询找不到参数问题

    使用Android SQLite中SQLiteDatabase类的query方法查询时,如果where中包含通配符,则参数会无法设置,如类似下面的方法查询时 SQLiteDatabase db = d ...

  6. Android+Sqlite 实现古诗阅读应用(二)

    传送门:Android+Sqlite 实现古诗阅读应用(一) Hi,又回来了,最近接到很多热情洋溢的小伙伴们的来信,吼开心哈,我会继续努力的=-=! 上回的东西我们做到了有个textview能随机选择 ...

  7. Android Sqlite 数据库版本更新

      Android Sqlite 数据库版本更新 http://87426628.blog.163.com/blog/static/6069361820131069485844/ 1.自己写一个类继承 ...

  8. Android SQLite总结(一) (转)

    Android SQLite总结(一)  郑海波 2012-08-21 转载请声明:http://blog.csdn.net/nuptboyzhb/article/details/7891887 前言 ...

  9. Android SQLite 数据库详细介绍

    Android SQLite 数据库详细介绍 我们在编写数据库应用软件时,需要考虑这样的问题:因为我们开发的软件可能会安装在很多用户的手机上,如果应用使用到了SQLite数据库,我们必须在用户初次使用 ...

随机推荐

  1. Java源代码-迭代器模式

    Java无疑是最成功的项目之一了,而在其中学习设计模式和架构设计,无疑是最好不过了. 概念: 提供一种方法访问容器中的各个元素,而又不暴露该对象的内部细节. 使用场景: 和容器经常在一起,我们定义了一 ...

  2. 【HTML】 frame和iframe的区别

    1.frame不能脱离frameSet单独使用,iframe可以: 2.frame不能放在body中:如下可以正常显示: <!--<body>--> <frameset ...

  3. 【HTML5&CSS3进阶学习01】气泡组件的实现

    前言 气泡组件在实际工作中非常普遍,无论是网页中还是app中,比如: 我们这里所谓气泡组件是指列表型气泡组件,这里就其dom实现,css实现,js实现做一个讨论,最后对一些细节点做一些说明,希望对各位 ...

  4. 关于UIScollView 中的contentOffset 的理解

    大家对UIScollView 中的contentOffset 一直有疑问, 虽然看是一个简单的问题, 实际上并不简单. 当时我也有好多疑问, 后来在网上找了一下资料, 发现没有找到合理的解释, 因此自 ...

  5. JVM-内存管理

    都说搞C的牛叉,那是因为C解决问题,全靠程序员自己,他们对自己的程序在内存中是什么样了如指掌.而Java呢不需要有太多操作系统的知识,不用时刻注意内存的问题,但这不代表我们就不用去了解它背后的原理.J ...

  6. [20141124]sql server密码过期,通过SSMS修改策略报错

    背景: 新建了用户,没有取消掉强制密码策略 修改掉策略报错 错误: The CHECK_POLICY and CHECK_EXPIRATION options cannot be turned OFF ...

  7. JavaScript的写类方式(6)

    时间到了2015年6月18日,ES6正式发布了,到了ES6,前面的各种模拟类写法都可以丢掉了,它带来了关键字 class,extends,super. ES6的写类方式 // 定义类 Person c ...

  8. Sqlserver游标复习

    经常写存储过程,但今天在游标使用过程中还是疏忽了一些事情,执行过程中一直执行不下去,后来直接sqlserver挂了,教训啊! 代码虽简单,望铭记: Create PROCEDURE [dbo].[te ...

  9. 电信行业的BI应用

    截至2015年年底,我国三大运营商的移动用户数达到13.1亿户,4G /3G用户累计达到8.09亿户,再次创下新高.从三大运营商的年度财报来看,在具体业务方面,三大运营商的数据流量业务带来的收入均已超 ...

  10. [麦先生]TP3.2之微信开发那点事[基础篇](获取access_token)

    在微信文档中一共提供了两个access_token:一个是伪全局配置的Access_token;一个是在微信网页授权时的小Access_token 很多刚刚接触微信开发的人经常会混淆这两个的作用: 我 ...