private static final String DB_NAME = "promise2.db";
private static final int VERSION = 1;
private static final String ID = "_id";
private static final String MEETING = "meeting";
private static final String TIME = "time";
private static final String MEMO = "memo";
private static final String TABLE_NAME = "promise";
private static final String CREATE_TABLE =
"CREATE TABLE "
+ TABLE_NAME + "("
+ ID + " integer primary key autoincrement, "
+ MEETING + " text not null, "
+ TIME + " text not null, "
+ MEMO + " text not null )";
.
.
.
// create
public boolean insertInfo(String meeting, String time, String memo) {
ContentValues cv = new ContentValues();
cv.put(MEETING, meeting);
cv.put(TIME, time);
cv.put(MEMO, memo);
return db.insert(TABLE_NAME,null,null) != -1;
}
// read
public ArrayList<Info> getAllInfo() {
ArrayList<Info> info = new ArrayList<Info>();
Cursor c = db.query(TABLE_NAME,
new String[] {ID, MEETING, TIME,MEMO}, null, null,null,null, ID + " DESC");
if (c.moveToFirst()) {
final int indexId = c.getColumnIndex(ID);
final int indexMeeting = c.getColumnIndex(MEETING);
final int indexTime = c.getColumnIndex(TIME);
final int indexMemo = c.getColumnIndex(MEMO);
do {
int id = c.getInt(indexId);
String meeting = c.getString(indexMeeting);
String time = c.getString(indexTime);
String memo = c.getString(indexMemo);
info.add(new Info(id, meeting, time, memo));
} while (c.moveToNext());
}
c.close();
return info;
}
// update
public boolean updateInfo(Info i) {
ContentValues cv = new ContentValues();
cv.put(MEETING, i.getMeeting());
cv.put(TIME, i.getTime());
cv.put(MEMO, i.getMemo());
String[] params = new String[] { Integer.toString(i.getId()) };
int result = db.update(TABLE_NAME, cv, ID + "=?", params);
return result > 0;
}
// delete
public boolean deleteInfo(int id) {
String[] params = new String[] { Integer.toString(id) };
int result = db.delete(TABLE_NAME, ID + "=?", params);
return result > 0;
}
public boolean deleteAll() {
int result=db.delete(TABLE_NAME, null, null);
return result > 0;
}
}
오픈 소스에 메모란을 하나 더 만들려고 metting 이라는 값과 동일하게 memo를 만들었는데저기 위 빨간 부분에서 자꾸 에러가 납니다. 다른것 다 추가하고 정확히 했는데 무슨 문제 일까요..
오류 내역
11-04 22:06:02.656: E/AndroidRuntime(7005): Caused by: android.database.sqlite.SQLiteException: no such column: memo (code 1): , while compiling: SELECT _id, meeting, time, memo FROM promise ORDER BY _id DESC
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:941)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:552)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1342)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteDatabase.queryWithFactory(SQLiteDatabase.java:1189)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1060)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1228)
11-04 22:06:02.656: E/AndroidRuntime(7005): at com.example.travel.DbAdapter.getAllInfo(DbAdapter.java:70)
11-04 22:06:02.656: E/AndroidRuntime(7005): at com.example.travel.Main_list.onCreate(Main_list.java:55)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.app.Activity.performCreate(Activity.java:5220)
11-04 22:06:02.656: E/AndroidRuntime(7005): at android.app.Instrumentation.callActivityOnCreate