android에서 데이터베이스에 생성된 조작 코드의 봉인

2948 단어
1. 클래스 만들기(MyDBHelper)를 만듭니다. 이 클래스는 SQLiteOpenHelper 클래스를 계승해야 합니다.
 public MyDBHelper (Context context) {
        super(context, "blackNumber.db", null, 1);
        
            }
    /**
     *                 
     */
    @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. 생성(
MyDBHelper
Dao
) 데이터베이스 조작을 실현하는 관련 방법.
private Context context;
private BlackNumberDBHelper dbHelper;
public BlackNumberDao(Context context) {
    this.context = context;
    dbHelper = new BlackNumberDBHelper(context);
}
/**
 *   
 * @param number      
 * @return              
 */
public boolean find(String number){
    boolean flag = false;
    
    SQLiteDatabase db = dbHelper.getReadableDatabase();
    if(db.isOpen()){
        Cursor cursor = db.rawQuery("select * from blackNumber where number = ?", new String[]{number});
        
        if(cursor.moveToNext()){
            flag = true;
        }
        cursor.close();
        db.close();
    }
    return flag;
}
/**
 *            
 * @param number        
 */
public void insert(String number){
    /**
     *             
     */
    if(find(number)){
        return;
    }
    
    SQLiteDatabase db = dbHelper.getWritableDatabase();
    if(db.isOpen()){
        db.execSQL("insert into blackNumber(number) values(?)", new Object[]{number});
        db.close();
    }
}
/**
 *      
 * @param number       
 */
public void delete(String number){
    if(!find(number)){
        return;
    }
    SQLiteDatabase db = dbHelper.getWritableDatabase();
    if(db.isOpen()){
        db.execSQL("delete from blackNumber where number = ?", new Object[]{number});
        db.close();
    }
}
/**
 *      
 * @param number       
 */
public void update(String oldNumber,String newNumber){
    if(!find(oldNumber)){
        return;
    }
    SQLiteDatabase db = dbHelper.getWritableDatabase();
    if(db.isOpen()){
        db.execSQL("update blackNumber set number = ? where number=?", new Object[]{newNumber,oldNumber});
        db.close();
    }
}
/**
 *        
 * @return         List  
 */
public List<String> getAllNumbers(){
    List<String> numbers = new ArrayList<String>();
    SQLiteDatabase db = dbHelper.getWritableDatabase();
    if(db.isOpen()){
        Cursor cursor = db.rawQuery("select number from blackNumber", null);
        while(cursor.moveToNext()){
            String number = cursor.getString(0);
            numbers.add(number);
        }
        cursor.close();
        db.close();
    }
    return numbers;
}

3. Activity에서 관련 조작 데이터베이스를 호출하는 방법.

좋은 웹페이지 즐겨찾기