您的位置:首页 > 移动开发 > Android开发

android 操作数据库

2016-04-07 15:22 381 查看
最近在做的一个android项目中需要用到数据库,

于是自己查了点资料,自己写了一个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;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: