有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java SQLiteException:没有这样的表:en_表(代码1 SQLITE_错误)

我搜索了很多找不到解决这个问题的方法。代码一切正常,但我得到了错误:没有这样的表:en_表

谁能帮我解决这个问题,我已经浪费了3个小时来寻找解决方案,但没有成功

代码如下:

private void queryString(String str, String subType) {
    switch (subType) {
        case "english":
            cursor = db.rawQuery("SELECT " + getWordColumnName() + " FROM " + getEnglishTableName() + " WHERE " + getWordColumnName()
                    + " LIKE '" + str + "%' AND " + getFreqColumnName() + " > 10 ORDER BY " + getFreqColumnName() + " DESC LIMIT 10", null);
            break;
        case "pashto":
            cursor = db.rawQuery("SELECT " + getWordColumnName() + " FROM " + getPashtoTableName() + " WHERE " + getWordColumnName()
                    + " LIKE '" + str + "%' AND " + getFreqColumnName() + " > 10 ORDER BY " + getFreqColumnName() + " DESC LIMIT 10", null);
            break;
        case "farsi":
            cursor = db.rawQuery("SELECT " + getWordColumnName() + " FROM " + getFarsiTableName() + " WHERE " + getWordColumnName()
                    + " LIKE '" + str + "%' AND " + getFreqColumnName() + " > 10 ORDER BY " + getFreqColumnName() + " DESC LIMIT 10", null);
            break;
        default:
            break;
    }
}


private String getEnglishTableName() {
    return mContext.getResources().getString("en_table");
}

.....

这是错误日志:

2020-06-04 20:55:56.701 11863-12087/com.studio.customemojiapp W/System.err: 安卓.database.sqlite.SQLiteException: no such table: en_table (code 1 SQLITE_ERROR): , while compiling: SELECT word FROM en_table WHERE word LIKE 'h%' AND freq > 10 ORDER BY freq DESC LIMIT 10
2020-06-04 20:55:56.702 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
2020-06-04 20:55:56.702 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:903)
2020-06-04 20:55:56.702 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:514)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:46)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1457)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1387)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at com.studio.customemojiapp.database.DatabaseManager.queryString(DatabaseManager.java:61)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at com.studio.customemojiapp.database.DatabaseManager.getAllRow(DatabaseManager.java:41)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at com.studio.customemojiapp.安卓.SoftKeyboard$SelectDataTask.doInBackground(SoftKeyboard.java:1050)
2020-06-04 20:55:56.703 11863-12087/com.studio.customemojiapp W/System.err:     at com.studio.customemojiapp.安卓.SoftKeyboard$SelectDataTask.doInBackground(SoftKeyboard.java:1034)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.os.AsyncTask$2.call(AsyncTask.java:333)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp W/System.err:     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp W/System.err:     at 安卓.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp W/System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp W/System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp W/System.err:     at java.lang.Thread.run(Thread.java:764)
2020-06-04 20:55:56.704 11863-12087/com.studio.customemojiapp E/DB ERROR: 安卓.database.sqlite.SQLiteException: no such table: en_table (code 1 SQLITE_ERROR): , while compiling: SELECT word FROM en_table WHERE word LIKE 'h%' AND freq > 10 ORDER BY freq DESC LIMIT 10

共 (0) 个答案