SQLite DB 기본 사용 코드



안드로이드 앱 개발시 사용되는 SQLite 사용방법을 간단하게 구현해 보았습니다.


데이터베이스 파일 을 생성하도록 생성자에서 building.db라는 파일이름으로 생성되게 만들어놓았습니다. 다음으로 onCreate(SQLiteDatabase db)에서 DB에서 기본이되는 테이블을 만들어주었습니다. onUpgrade 함수에서는 지금 당장은 필요가 없으니 기존의 테이블이 있다면 지우고 다시 생성하는 코드를 삽입 물론 한번 배포후에 DB 테이블을 업데이트 할 필요가 있을때는 구현해 줘야겠찌요.

package ----

import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;


public class DBMngt extends SQLiteOpenHelper {

public DBMngt(Context context){
super(context, "buildingmngt.db", null, 1);
}

public void onCreate(SQLiteDatabase db){
db.execSQL("CREATE TABLE tbBuilding (_id INTEGER PRIMARY KEY AUTOINCREMENT, " + "name TEXT, address TEXT, img TEXT);");
}

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){
db.execSQL("DROP TABLE IF EXISTS tbBuilding");
onCreate(db);
}

public long addBuilding(BuildingDat item){
SQLiteDatabase db = getWritableDatabase();
ContentValues row = new ContentValues();
row.put("name", item.mName);
row.put("address", item.mAddress);
row.put("img", item.mImgPath);
long id = db.insert("tbBuilding", null, row);
db.close();
return id;
}

public void modifyBuilding(BuildingDat item){
SQLiteDatabase db = getWritableDatabase();
String query = "UPDATE tbItem SET name = '" + item.mName + "', address = '" + item.mAddress +"', img = '" + item.mImgPath + "' WHERE _id = '" + item.mId + "';";
db.execSQL(query);
db.close();
}

public void removeBuilding(BuildingDat item){
SQLiteDatabase db = getWritableDatabase();
String query = "DELETE FROM tbItem WHERE _id = '" + item.mId + "';";
db.execSQL(query);
db.close();
}
}


이 예제는 간단하게 테이블을 만들고 삽입 수정 삭제 하는 코드입니다.

여기에 뼈와 살을 붙여서 건물관리 앱을 만들어 볼까 합니다.^^