SQLiteOpenHelperのonUpgrade()メソッドでテーブルを削除しようとしています。クエリに「No such table」という奇妙なエラーが表示されます: DROP TABLE IF EXISTS certification_categories
私はこれを引き起こしていたものを考え出したテーブルを削除する前にSQLiteで動作しないDROP TABLE if android
android.database.sqlite.SQLiteException: no such table: main.Auction (code 1): , while compiling: DROP TABLE IF EXISTS certification_categories
at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:889)
at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:500)
at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:31)
at android.database.sqlite.SQLiteDatabase.executeSql(SQLiteDatabase.java:1677)
at android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1608)
at com.db.DataBaseHelper.recreate(DataBaseHelper.java:135)
at com.db.DataBaseHelper.onDowngrade(DataBaseHelper.java:125)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:254)
at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:187)
at com.dao.SyncProgressDao.getUnfinishedAuctionIds(SyncProgressDao.java:45)
at com.service.SyncProgressService.getUnfinishedAuctionIds(SyncProgressService.java:69)
at com.background.AuctionSync.syncUnfinished(AuctionSync.java:102)
at com.background.AuctionSync.onHandleIntent(AuctionSync.java:97)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:68)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.os.HandlerThread.run(HandlerThread.java:61)
あなたが投稿したコードは、どこにエラーが発生しているのではないですか? 'at com.db.DataBaseHelper.recreate(DataBaseHelper.java:135)' – m0skit0
テーブルにバインドされている外部キー制約はありますか? – Durus
onDowngrade ??? – petey