Android SQLITE 操作工具类
首先创建一个类 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 操作工具类的更多相关文章
- Android文件操作工具类(转)
Android文件操作工具类(转) 2014/4/3 18:13:35 孤独的旅行家 博客园 这个工具类包含Android应用开发最基本的几个文件操作方法,也是我第一次发博客与大家分享自己写的东 ...
- Android Sqlite 工具类封装
鉴于经常使用 Sqlite 数据库做数据持久化处理,进行了一点封装,方便使用. 该封装类主要支持一下功能 支持多用户数据储存 支持 Sqlite数据库升级 支持传入 Sql 语句建表 支持 SQLit ...
- android SQLite使用SQLiteOpenHelper类对数据库进行操作
android SQLite使用SQLiteOpenHelper类对数据库进行操作 原文: http://byandby.iteye.com/blog/835580
- Android笔记——SQLiteOpenHelper类
public 抽象类 SQLiteOpenHelper 继承关系 Java.lang.Object android.database.sqlite.SQLiteOpenHelper 类概要 这是一个辅 ...
- Android SQLite 通配符查询找不到参数问题
使用Android SQLite中SQLiteDatabase类的query方法查询时,如果where中包含通配符,则参数会无法设置,如类似下面的方法查询时 SQLiteDatabase db = d ...
- Android+Sqlite 实现古诗阅读应用(二)
传送门:Android+Sqlite 实现古诗阅读应用(一) Hi,又回来了,最近接到很多热情洋溢的小伙伴们的来信,吼开心哈,我会继续努力的=-=! 上回的东西我们做到了有个textview能随机选择 ...
- Android Sqlite 数据库版本更新
Android Sqlite 数据库版本更新 http://87426628.blog.163.com/blog/static/6069361820131069485844/ 1.自己写一个类继承 ...
- Android SQLite总结(一) (转)
Android SQLite总结(一) 郑海波 2012-08-21 转载请声明:http://blog.csdn.net/nuptboyzhb/article/details/7891887 前言 ...
- Android SQLite 数据库详细介绍
Android SQLite 数据库详细介绍 我们在编写数据库应用软件时,需要考虑这样的问题:因为我们开发的软件可能会安装在很多用户的手机上,如果应用使用到了SQLite数据库,我们必须在用户初次使用 ...
随机推荐
- JAVA中常说的三大框架指:SSH
即:spring.Struts.hibernate Spring:功能强大的组件粘合济,能够将你的所有的Java功能模块用配置文件的方式组合起来(还让你感觉不到spring的存在)成为一个完成的应用 ...
- gulp压缩css文件跟js文件
越到最后啊 就越发现,真的很理解那句话 就是自己多学一点一点知识,就少一句问别人的东西 这是多么痛苦的领悟 今天需要压缩css跟js文件 然后不懂啊 就问别人啊 就问啊问啊 然后再上网了解啊了解啊 用 ...
- HTML5 随机弹跳的小球
查看效果:http://keleyi.com/a/bjad/tc1y11dy.htm Chrome效果图: 火狐效果图:推荐:http://hovertree.com/texiao/css3/18/ ...
- 前端可视化开发-livereload
在前端开发中,我们会频繁的修改html.css.js,然后刷新页面,开效果,再调整,再刷新,不知不觉会浪费掉我们很多时间.有没有什么方法,我在编辑器里面改了代码以后,只要保存,浏览器就能实时刷新.经过 ...
- 解决IE兼容模式问题
IE浏览器从IE8开始添加了兼容模式,开启后会以低版本的IE进行渲染.在浏览网页时候会出现网页显示问题,于是可以在html中加入以下代码来使IE使用固定的渲染模式: <metahttp-equi ...
- NSString 的常用操作
NSString *testStr01=@"HelloWord"; NSString *testStr02=[testStr01 substringToIndex:];//取头(从 ...
- 国内好用的maven仓库,添加到本地nexus中
速度快的maven仓库真的难找,国外网站很多被封了.前天在网上找,有人说阿里有个公开的,速度很快.确实很快! 我添加到本地nexus中,结果不能更新索引,我是这么添加的,如下: 这个地址在浏览器中能够 ...
- 【代码笔记】iOS-圆角矩形
代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. se ...
- SVN 提交代码时提示文件已经存在解决办法
在SVN里面找到这个文件,把这个文件右键delete删除掉,然后提交一下commit ,然后在项目中也把这个文件删除了,然后再添加到项目中提交,commit一下,就好了,解决
- maven工程模块化
前言 项目的模块化有利于任务分工,后期维护,易扩展,模块还可以独立成服务单独部署等: 创建packaging类型为POM的父项目 我用的maven插件是m2e,相信大部分人在eclipse装的也是m2 ...