안드로이드로 지하철 어플을 만들고 있습니다.
그런데 asset해서 DB넣고 했는데 DB의 모든 행이 다 않읽혀 집니다.
커서에서 DB에서 만들어진 총8열이 읽혀야 하는데 7열까지 밖에 읽지를 못하고 있습니다.
총8열의 내용은[StationName,StationLine,preStation,nextStation,StationInfo,StationExit,StationTime,StationAllTime]
SQLite Manager를 통해서 SQL문을 던져서 확인도 해보았지만 쿼리문에 이상은 아니었습니다.
제가 무엇을 잘못 읽어온것인지를 모르겠습니다.
고수님들의 조언과 도움이 절실합니다.
이부분은 Cursor를 이용해 가져오는 부분입니다.
try { // DB Open
DBAdapter.open(); // 데이터 조회
Cursor c = DBAdapter.selectStationToStationLine(strStationName,
strStationLine); // 조회된 데이터가 0건이면 return
if (c.getCount() == 0)
return false;
while (c.moveToNext()) {
if (c.getCount() > 1) {
String strStationNameTemp = c.getString(nStationName);
//생략
if (strStationName.compareTo(strStationNameTemp) != 0) {
continue; }}
strStationName = c.getString(nStationName).trim(); // 역명
strnextStation = c.getString(nNextStation); // 이전역
strpreStation = c.getString(nPreStation); // 다음역
strStationInfo = c.getString(nStationInfo).trim(); // 역정보(주소,
// 전화번호)
strStationExit = c.getString(nStationExit).trim(); // 출구정보
strStationSchedule = c.getString(nStationTime); // 첫차, 막차정보
strStationALLSchedule=c.getString(nStationAllTime).trim();//전체시간표==>>이부분이 들어가질 않습니다.
}
이부분은 DBAdapter클래스입니다.
public static final String KEY_STATIONNAME = "StationName";
public static String DATABASE_NAME = "경로들"+ "DB명.db";
private static final String TABLE_NAME = "Station";
public static SQLiteDatabase mDb;
static public void open() {
mDb = SQLiteDatabase.openOrCreateDatabase(DATABASE_NAME, null);
}
static public Cursor selectStationToName(String strName) {
return mDb.query(TABLE_NAME, null, "StationName like '%" + strName + "%'", null, null, null, KEY_STATIONNAME);
}
moveToFirst() 사용해서 해보랬는데, 생각해보니 굳이 안써도 되는거 같길래 댓글을 지웟네요 ;;
디버깅하면서 따라가면 금방 나오지 않을까 싶은데 ㅠ