2015년 12월 9일 수요일

[android] 데이터베이스 싱글톤 구현(db생성)



public class AutoCallServiceDBManager {
static final String DB_AUTOCALL = "AutoCall.db";
static final String TABLE_AUTOCALL = "AutoCall";
static final int DB_VERSION = 1;

Context mContext = null;


private static AutoCallServiceDBManager autoCallDBManager = null;
private   SQLiteDatabase mdatabase = null;


//외부에서 객체생성을 막기 위해 생성자를 private으로 선언하였다.
        //액티비티에서 oncreate 시 getInstance 를 호출 하게하여 처음 DB를 생성하고
        //연결후 이후는

private AutoCallServiceDBManager(Context context) {
// TODO Auto-generated constructor stub
mContext = context;

//DB생성 및 연결
mdatabase = context.openOrCreateDatabase(DB_AUTOCALL, Context.MODE_PRIVATE ,null);

//테이블과 컬럼 생성
mdatabase.execSQL("CREATE TABLE IF NOT EXISTS " + TABLE_AUTOCALL +
"(" + "_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"phoneName TEXT, " +
"phoneNum TEXT, " +
"count INTEGER default 1 ); ");

}

//내부에서 생성자를 인스턴스화 하여 반환함.
public static AutoCallServiceDBManager getInstance(Context context){

if(autoCallDBManager == null){
autoCallDBManager = new AutoCallServiceDBManager( context );
}

return autoCallDBManager;
}

//select 문 전용 함수
public Cursor query( String [] columns, String selection, String[] selectionArgs, String groupBy,
String having, String orderBy ){

return mdatabase.query(TABLE_AUTOCALL, columns, selection, selectionArgs, groupBy, having, orderBy);

}

//데이터 추가
public long insert(ContentValues addRowValue){

Log.d("AutoCallService", "insert()");
return mdatabase.insert(TABLE_AUTOCALL, null, addRowValue);

}
//데이터 전체 삭제
public void deleteAll(){
mdatabase.execSQL(" delete from AutoCall;");
}


}

댓글 없음:

댓글 쓰기

[oracle]백업및 복구

[oracle]백업및 복구 오라클 덤프 백업및 복구 윈도우 서버 기반 간단 정리 --디렉터리 조회 sqlplus 또는 dbtool 입력시작 SELECT * FROM DBA_DIRECTORIES ; --D:...