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

android studio 数据库相关操作

2015-10-13 11:23 417 查看
我们以号黑名单数据库为例,演示一下安卓关于数据库的操作

1、添加操作

//得到数据库的路径
public static final String PATH = "data/data/com.project.qizai.safeassitant/files/blackNumber.db";
public boolean add(String number, String mode) {
//打开指定的数据库
SQLiteDatabase db = SQLiteDatabase.openDatabase(PATH, null, SQLiteDatabase.OPEN_READONLY);
ContentValues values = new ContentValues();
values.put("number", number);
values.put("mode", mode);
/**
* insert参数
* 1、表名
* 2、空列的默认值
* 3、ContentValues类型的一个封装了列名和列值的Map;
*/
long rowID = db.insert("blacknumber", null, values);
//如果返回值不等于-1,说明操作成功
if (rowID != -1) {
return true;
}
return false;
}

2、删除操作

public boolean delete(String number) {
//SQLiteDatabase.OPEN_READWRITE代表可读写
SQLiteDatabase db = SQLiteDatabase.openDatabase(PATH, null, SQLiteDatabase.OPEN_READWRITE);
/**
* 参数1:表名
* 参数2:条件
* 参数3:参数,是个string类型的数组
* 返回值是影响的行数,如果行数为0代表失败
*/
int affectLines = db.delete("blacknumber", "number=?", new String[]{number});
if (affectLines != 0) {
return true;
}
return false;
}

3、修改操作

public boolean changeNumberMode(String number, String mode) {
SQLiteDatabase db = SQLiteDatabase.openDatabase(PATH, null, SQLiteDatabase.OPEN_READWRITE);
ContentValues values = new ContentValues();
values.put("mode", mode);
<span style="white-space:pre">	</span>//通过号码修改模式
int affectLines = db.update("blacknumber", values, "number=?", new String[]{number});
if (affectLines != 0) {
return true;
}
return false;
}

4查询操作

public static boolean find(String number){
SQLiteDatabase db = SQLiteDatabase.openDatabase(PATH, null, SQLiteDatabase.OPEN_READONLY);
//cursor就是一个游标,可以移动
Cursor cursor = db.rawQuery("select name from blacknumber where number = ?", new String[]{number});
if(cursor.moveToNext()){
//如果可以移动到下一个位置,就代表有查询结果,然后就可以完成你想完成的操作
return true;
}
return false;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息