неизвестная ошибка (код 14): не удалось открыть базу данных * при непрерывном нажатии кнопки * - PullRequest
0 голосов
/ 17 февраля 2020

Привет! Я создаю приложение с функцией, которая заполняет текстовые представления следующей строкой из таблицы Sqlite нажатием кнопки.

При непрерывном нажатии на кнопку иногда это дает ошибка, а иногда ее нет.

У меня во всем приложении много запросов, и мое приложение всегда выдает это предупреждение

Skipped 5 frames! The application may be doing too much work on its main thread.

это предупреждение имеет отношение к сбою моего приложения из-за этого

unknown error (code 14): Could not open database?

В моей активности это код

public void next_record()
    {
        try
        {
            db = new DatabaseHelper(getApplicationContext());
            sqLiteDatabase = db.getReadableDatabase();
            Cursor next_record = sqLiteDatabase.rawQuery
                    ("SELECT account_no, MIN(SEQUENCE) FROM Consumer WHERE sequence > (SELECT sequence From Consumer where account_no = '"+ reading_autoconsumeraccount.getText().toString() +"')", null);
            while (next_record.moveToNext())
            {
                this.next_account_number_for_reading = next_record.getString(0);
            }
            next_record.close();
        }
        catch (Exception e)
        {
            throw new RuntimeException(e);
        }
    }

И это то, что я получаю в Run Monitor

android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
        at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
        at com.vicjames.qiimeterreader.ManageReading.next_record(ManageReading.java:2012)
        at com.vicjames.qiimeterreader.ManageReading$4.onClick(ManageReading.java:205)at 
        com.vicjames.qiimeterreader.ManageReading.next_record(ManageReading.java:2012)
        at com.vicjames.qiimeterreader.ManageReading$4.onClick(ManageReading.java:205)

Выдает ошибку в случайным образом, независимо от того, какую строку нужно заполнить

Я не знаю, как загрузить видео здесь, чтобы уточнить мой вопрос: (

...