0
我試圖將第二個表格添加到我的應用程序,但我沒有任何運氣。這兩個表是他們自己的類,是單身人士。我在onUpgrade方法中傳入數據庫的引用,並再次作爲實例變量傳遞。未創建附加表格
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
transTable = TransactionTable.getInstance(db);
sysTable = SystemTable.getInstance(db);
onCreate(db);
transTable.updateTable();
sysTable.updateTable();
}
onCreate方法只調用所有表中的create方法。
@Override
public void onCreate(SQLiteDatabase db) {
transTable.createTable();
sysTable.createTable();
}
第二張表sysTable在執行下面的create語句時不會引發異常。
public void createTable() {
db.rawQuery("CREATE TABLE IF NOT EXISTS " + tableName + " ("
+ "_id INTEGER PRIMARY KEY AUTOINCREMENT, " + lastUsed
+ " INTEGER, " + balance + " INTEGER, " + accountName
+ " TEXT, UNIQUE (" + accountName + "))", null);
}
但是,當我運行一個簡單的查詢,如下列:
db.rawQuery("select * from " + tableName, null);
我得到一個錯誤,說明
android.database.sqlite.SQLiteException: no such table: system_t: ,
while compiling: select * from system_t
有一個與第一個表沒有問題,被丟棄或創建。有任何想法嗎?
Aaahh人!所有的東西......感謝大貓。 – DroidT 2012-03-11 13:15:04