Articles of андроид sqlite

Плохая производительность SQLite на внешнем хранилище в Android

Я использую внешнее хранилище для хранения событий в базе данных, пока они ждут отправки на сервер. Я вижу очень плохую производительность при вставке записей. Я знаю, что внешняя память может быть медленной, но я хотел увидеть некоторое число, поэтому я написал небольшое приложение, которое его проверяет. Вот код: public static final int INSERTS = 100; […]

IllegalStateException: недопустимые таблицы при попытке запроса базы данных с помощью ContentProvider

Я получаю ошибку ниже при попытке запросить мою базу данных с помощью моего собственного ContentProvider показанного ниже. Я подтвердил, что таблица существует с правильным именем, и она все еще не работает. Я смог заставить его работать с сырым запросом, но я хочу, чтобы мы использовали шаблон ContentProvider для практики. Спасибо, дайте мне знать, если вам […]

SQLite Android. Невозможно открыть файл базы данных

Я нашел много вопросов об этой проблеме, но я не могу это исправить. У меня есть база данных sqlite db: assets/data/data/{package_name}/databases/mydb.db Я могу открыть базу данных и прочитать данные перед изменением одной структуры таблицы. Я пытаюсь удалить приложение и снова установить его, но я получаю то же исключение. Что я могу сделать сейчас? заранее спасибо […]

Нужно ли использовать _ID в качестве первичного ключа SQlite? И он должен быть INT? (Android Dev)

Это, наверное, глупый вопрос, но я еще не смог найти ответ. Я хочу использовать столбец TEXT с моими собственными уникальными именами в качестве первичного ключа в таблице. Маленький раздел кода для определения этого в моем проекте выглядит примерно так: …blahblah…"CREATE TABLE " + CAT_BUD_TAB + " (" + CAT_ITEM_ID + "_ID TEXT PRIMARY KEY, "…blahblah.. […]

Ormlite read Date как 'yyyy-MM-dd'

Мне нужно прочитать базу данных sqlite, предоставленную мне, поэтому я не могу изменить формат даты (yyyy-MM-dd) в таблицах. Когда я пытаюсь использовать ormlite для создания объекта для меня, используя следующую аннотацию: @DatabaseField(columnName = "REVISION_DATE", dataType = DataType.DATE_STRING) public Date revisionDate; Это дает мне следующую ошибку: java.sql.SQLException: Problems with column 3 parsing date-string '2012-05-01' using 'yyyy-MM-dd […]

Как использовать SQLite DB из AsyncTask?

Я использовал свой класс Activity для доступа к моей базе данных, которая иногда заставляла мою программу замирать. Поэтому я решил использовать AsyncTask для обработки БД. Моя проблема заключается в том, что я не знаю, как создать экземпляр моей SQLite DB «TheDB» из класса AsyncTask public class myClass extends AsyncTask<Void, Void, Void>{ private TheDB db; any […]

Таблица SQLite с целыми столбцами хранит строку

Я нашел что-то в своем приложении. Я создал таблицу с столбцом с именем type который должен хранить целые числа: db.execSQL("CREATE TABLE " + CellColumns.TABLE + " (" + CellColumns._ID + " INTEGER PRIMARY KEY," + CellColumns.TYPE + " INTEGER," // <– this + CellColumns.CELL_ID + " INTEGER," + CellColumns.CITY_ID + " INTEGER," + CellColumns.LOAD + […]

Как управлять бесплатными и платными версиями Android-проекта?

Я решил создать платную версию своего бесплатного приложения для Android. У платной версии есть некоторые дополнительные функции. Как мне управлять обеими версиями? Можно ли сохранить их на основе одного и того же исходного кода? Если приложение требует уникального имени пакета, как заставить принудительное приложение заменить бесплатную версию? Как насчет db, предпочтений и других конфиденциально хранимых […]

Android: column '_id' не существует

Я получаю эту ошибку IllegalArgumentException: column '_id' не существует При использовании SimpleCursorAdapter для извлечения из моей базы данных, и таблица действительно имеет этот столбец _id . Заметив, что это общая проблема, я попытался обойти это, учитывая некоторые из решений онлайн, но никто из них не работает. Это мой запрос курсора: SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, […]

Ormlite объемные вставки в Android

Может ли кто-нибудь объяснить, почему мои вставки так долго в Ormlite? Выполнение 1,700 вставок в одной транзакции sqlite на рабочем столе занимает меньше секунды. Однако при использовании Ormlite для Android это занимает около 70 секунд, и я могу видеть каждую вставку в сообщениях отладки. Когда я пытаюсь обернуть вставки в одну транзакцию, она идет с […]