1.打開數據庫,創建數據表;
2.對數據進行crud(Create Read Update Delete);
1.打開數據庫,創建數據表;
1.SQLiteOpenHelper
2.SQLiteDatabase
.execSQL("create table blacknumber (_id integer primary key autoincrement, number varchar(20))");
2.對數據進行crud(Create Read Update Delete);
1.增:db.execSQL("insert into blacknumber (number) values(?)", new Object[]{number});
2.刪:db.execSQL("delete from blacknumber where number = ?", new Object[]{number});
3.改:db.execSQL("update blacknumber set number = ? where number = ?", new Object[]{newnumber,oldnumber})
4.查:Cursor cursor = db.rawQuery("select * from blacknumber where number =?", new String[]{number});
5.查所有:Cursor cursor = db.rawQuery("select number from blacknumber", null);
1.打開數據庫,創建數據表;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class BlackNumberDBOpenHelper extends SQLiteOpenHelper {
public BlackNumberDBOpenHelper(Context context) {
super(context, "blacknumber.db", null, 1);
}
/**
* 數據庫第一次被創建的時候 調用oncreate()
* 初始化數據庫表結構的操作
*/
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table blacknumber (_id integer primary key autoincrement, number varchar(20))");
}
/**
* 數據庫已經操作 並且 新的數據庫的版本 大於 舊的數據庫的版本
* 數據庫的表結構信息的更新
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
2.對數據進行crud(Create Read Update Delete);
public class BlackNumberDao {
BlackNumberDBOpenHelper helper ;
public BlackNumberDao(Context context) {
helper = new BlackNumberDBOpenHelper(context);
}
/**
* 添加一條黑名單號碼
*/
public void add(String number){
if(find(number)){
return ;
}
SQLiteDatabase db = helper.getWritableDatabase();
if(db.isOpen()){
db.execSQL("insert into blacknumber (number) values(?)", new Object[]{number});
db.close();
}
}
/**
* 刪除一條黑名單的數據
*/
public void delete(String number){
SQLiteDatabase db = helper.getWritableDatabase();
if(db.isOpen()){
db.execSQL("delete from blacknumber where number = ?", new Object[]{number});
db.close();
}
}
/**
* 更改一條黑名單的號碼
*/
public void update(String oldnumber,String newnumber){
SQLiteDatabase db = helper.getWritableDatabase();
if(db.isOpen()){
db.execSQL("update blacknumber set number = ? where number = ?", new Object[]{newnumber,oldnumber});
db.close();
}
}
/**
* 查詢一條黑名單號碼
*/
public boolean find(String number){
boolean result =false;
SQLiteDatabase db = helper.getReadableDatabase();
if(db.isOpen()){
Cursor cursor = db.rawQuery("select * from blacknumber where number =?", new String[]{number});
if(cursor.moveToFirst()){
result = true;
}
cursor.close();
db.close();
}
return result;
}
/**
* 查找全部黑名單號碼
*/
public List<String> findAll(){
List<String> numbers = new ArrayList<String>();
SQLiteDatabase db = helper.getReadableDatabase();
if(db.isOpen()){
Cursor cursor = db.rawQuery("select number from blacknumber", null);
while (cursor.moveToNext()) {
numbers.add( cursor.getString(0));
}
cursor.close();
db.close();
}
return numbers;
}
}