본문 바로가기
프로그래밍/Android

SQLite select, insert, update, delete

by CaffeLatte 2013. 5. 23.

1. select

SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();

queryBuilder.setTables("table_name");

Cursor cursor = queryBuilder.query(db, null, null, null, null, null, null);
// public Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
: table 질의를 수행할 테이블 이름
- columns : 자료를 받아올 필드. null을 입력하면 모든 필드 반환.
- selection : SQL의 where구문.
- selectionArgs : selection을 ?로 지정하였을 경우 사용. 조건 입력.
- groupBy : SQL의 group by구문.
- having : groupBy를 지정하였을 경우 사용. 조건 입력.
- orderBy : 결과값 정령 방식. null은 기본 정렬.
- limit : 결과값의 개수를 제한.

cursor.close(); // cursor를 사용한 후 닫아줌

 

2. insert

ContentValues cv = new ContentValues();

cv.put("column_name", "data"); // column_name의 내용을 data로 바꿈
cv.put....

db.insert("table_name", null, cv);
// long SQLiteDatabase.insert(String table, String nullColumnHack, ContentValues values)에서 nullColumnHack은 Null이 들어가야 할 곳에 들어가게 될 것. DB는 완전히 비어있는 행을 삽입하는 것을 허용하지 않기 때문에 비어있다는 것을 표현하기 위해 Null을 사용.

// 변경된 값으로 db에 채움

 

3. update

ContentValues cv = new ContentValues();

cv.put("column_name", "data"); // column_name의 내용을 data로 바꿈
cv.put...

String whereClause = { "table_column" + " like ?" }; // 조건

String whereArgs[] = { column_value }; // 조건값

db.update("table_name", cv, whereClause, whereArgs);

// 조건에 맞는 값을 찾아 내용을 바꿈. 복수 조건 가능.

 

4. delete

String whereClause = { "table_column" + " like ?" }; // 조건

String whereArgs[] = { column_value }; // 조건값

db.delete("table_name", whereClause, whereArgs);

// 조건에 맞는 값을 찾아 column을 삭제

 

댓글