android 操作数据库
2016-04-07 15:22
381 查看
最近在做的一个android项目中需要用到数据库,
于是自己查了点资料,自己写了一个android数据库的操作类,
实现了数据库的创建,表的创建,记录的插入查询等等功能,
记录在这里供大家参考
(ps,写博客不知道如何自动换行,只能手动换行了)
于是自己查了点资料,自己写了一个android数据库的操作类,
实现了数据库的创建,表的创建,记录的插入查询等等功能,
记录在这里供大家参考
(ps,写博客不知道如何自动换行,只能手动换行了)
import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; public class DataBase { static SQLiteDatabase db=null; /* * 数据库初始化 */ public static void Init(String name,Context context) { db=context.openOrCreateDatabase(name,Context.MODE_PRIVATE,null); } /* 功能:强制创建一张表,如果此表已经存在,删除然后重建 * name:要创建的表的名字 * columns: 要创建的表的结构 * e.g: CreateTab("testTable","(name varchar(32),id int)") */ public static boolean CreateTab(String name,String columns) { if(db==null)return false; else { if(TabIsExist(name)) db.execSQL("DROP TABLE "+name+";"); db.execSQL("CREATE TABLE "+name+columns+";"); } return true; } /* 功能:向表格中插入一条记录 * 参数:name 表格名字 * 参数:columns 要插入的内容 * e.g : * ContentValues value =new ContentValues(); * value.put("name","zhangshan"); * value.put("id"+i,11); * Insert("testtable",value); */ public static boolean Insert(String name,ContentValues values) { if(db==null)return false; else { if(TabIsExist(name)) db.insert(name, null, values); } return true; } /* * 功能:获取表中的所有数据 * * Cursor c=DataBase.getAllData("mytable"); * String s=""; int columnsSize=c.getColumnCount(); String []columns=c.getColumnNames(); String columnsName=""; //获取表头 for (String col : columns) { columnsName+=col+"\u0020 \u0020"; } //获取表的内容 while(c.moveToNext()){ for(int i=0;i<columnsSize;i++){ s+=c.getString(i)+"\u0020 \u0020"; } * */ public static Cursor getAllData(String table){ //遍历表所有数据 return db.rawQuery("select * from "+table+";", null); } /* * 判断一个表格是否存在,如果存在返回真,如果不存在返回假 */ public static boolean TabIsExist(String tabName) { Cursor cursor = db.rawQuery("select count(*) as c from sqlite_master where type ='table' and name ='"+tabName+"';", null); if(cursor.moveToNext()) { int count = cursor.getInt(0); if(count>0) { return true; } } return false; } //关闭数据库 public static boolean Close() { if(db==null)return false; else db.close(); return true; } }
相关文章推荐
- android自定义全屏dialog
- android模拟器之痛
- Android高级控件----AdapterView与Adapter
- Android 集成第三方的sdk
- 图片的缩放,平移——Matrix的使用
- Android获取栈顶程序
- zz :Android测试之Monkey
- zz:Android 测试工具Monkey & Monkeyrunner 使用方法
- Android之粘性广播理解
- zz:使用Monkeyrunner进行Android自动化的总结
- Android学习笔记之百度地图(驾车路线搜索及RouteOverlay步行路线搜索及RouteOverlay)
- zz:Android Monkeyrunner Test
- android开源框架学习---EventBus---使用例子
- Android 中Handler引起的内存泄露
- android开源框架学习---EventBus---源码分析
- 详解Android Material Design自定义动画的编写
- Android-ImageView
- android打包
- Android 百分比布局库(percent-support-lib) 解析与扩展
- Android Studio下NDK的使用