데이터베이스의 레코드를 검색하는 방법을 알아본다.

검색 메서드는 다른 SQL문과는 달리 결과셋을 리턴해야 하므로 execSQL 메서드가 아닌 rawQuery 메서드를 실행해야 한다고 한다.

		int index = 0;
		cursor = mDB.rawQuery("SELECT item, price FROM shop", null);
		while(cursor.moveToNext()) {
			arrShop[index][0] = cursor.getInt(0);
			arrShop[index][1] = cursor.getInt(1);
	        index ++;
		}

shop 이라는 테이블안에 item, price 라는 레코드가 들어있음.
cursor 를 moveToNext();로 하나씩 레코드를 검색한다. 만약 더이상 레코드가 없으면 while문을 빠져나오게 된다.
레코드의 순서를 미리 알고있다면 cursor.getInt(순서); 식으로 불러오면된다.

shop 테이블 안에 레코드의 순서는 item, price 순서대로 만들어 놓았으므로 각각 0번과 1번을 갖게된다.



'Android > Databases' 카테고리의 다른 글

데이터베이스 Transaction 사용하기  (0) 2011.07.26
데이터베이스 검색  (0) 2011.07.13
데이터베이스 삭제 및 갱신  (2) 2011.07.03
데이터베이스 업그레이드하기  (0) 2011.07.03
데이터베이스 사용하기  (1) 2011.07.02

+ Recent posts