Articles of sqlite3

Транзакции в базе данных, не работающие в android

Я использую следующий код, но испытываю некоторые проблемы: mDb.beginTransaction(); String updateQuery ="Query entered here"; String[] valVars = { Variables initialized here }; Cursor c = mDb.rawQuery(updateQuery, valVars); if (c != null) { mDb.setTransactionSuccessful(); mDb.endTransaction(); return true; } else { mDb.endTransaction(); return false; } Когда я использую debug вместо выполнения return true , он прямо возвращает […]

CompileStatement или db.insert в android

Я хочу вставлять записи в таблицу несколько раз, у меня есть выбор либо использовать compileStatement, либо использовать db.insert, как показано ниже. String TABLENAME = "table"; //fields in table: id, name SQLiteStatement statement = db.compileStatement("INSERT INTO "+TABLENAME+" VALUES(?,?);"); statement.bindLong(1,666); statement.bindString(2,"john"); statement.executeInsert(); или String TABLENAME = "table"; ContentValues values = new ContentValues(); values.put("id", 666); values.put("name", "john"); db.insert(TABLENAME, […]

Что именно делает ограничение SQLite в «NO ACTION» внешнем ключе и чем оно отличается от «RESTRICT»?

В документации говорится: Настройка «NO ACTION» означает только то, что: когда родительский ключ изменен или удален из базы данных, особых действий не предпринимается. Моя первая интерпретация этого предложения заключалась в том, что «если родительский ключ модифицирован или удален, то эта модификация выполняется и никаких других действий не предпринимается», таким образом, не сохраняя целостность базы данных, […]

Ограничение количества строк в SQLite

У меня есть ситуация, когда я просто хочу ограничить только 50 строк в таблице. Если пользователь вставляет новую строку после этого, то первая строка (которая была вставлена ​​очень первой) должна быть удалена, а новая строка вставлена, так что счетчик останется таким же. Я знаю, что у меня может быть поле rowid и при вставке новой […]

База данных Sqlite должна создаваться только один раз

I hv разработал проект с функцией C2DM. Когда есть данные, доступные на сервере; Сервер подталкивает данные ко всем устройствам, которые hv это приложение (в моем случае это небольшой msg). Теперь мой вопрос заключается в том, что каждый раз, когда создается база данных и таблица, где появляется сообщение, вот мой код, public class MessageHelper extends Activity […]

Таблица sqlite3 с ограниченным максимальным количеством строк (по выбору)

Я храню данные на основе интервалов (местоположение gps), и я не хочу, чтобы БД раздувалась, поэтому я определил максимальное количество строк, к которым он может перейти, и затем просто удаляет самую старую строку каждый раз, когда я вставляю новую. Теперь эксперт по базам данных посмотрел на мой код, и он говорит, что его способ неэффективен, […]

Удалите несколько строк из contentprovider

Я попытался удалить две строки из моего поставщика контента без успеха. Вот запрос; int rowdelted = con.getContentResolver().delete(CONTENT_URI, clausole, null); Где clausole – строка типа "_ID = 100 AND _ID = 101 AND _ID = 102". Что-то не так? заранее спасибо

Обновление базы данных Sqlite в android?

У меня есть приложение для Android, которое использует Sqlite как database.It имеет следующие таблицы: Отели Места Избранные Я сохраняю свой исходный файл базы данных в папке assests, и когда пользователь устанавливает мое приложение, я просто копирую эту базу данных в каталог / data / data / package_name / databases. Исключительно таблица « Favorites пуста, и […]

Как удалить старые строки из базы данных sqlite на Android?

У меня есть параметр, где пользователь может выбрать, за какой период времени данные должны быть сохранены. Я читал его в переменной days . Дата и время, когда запись была добавлена ​​в базу данных, хранится в KEY_DATE_ADDED , она создается как: SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // sql date format Date date = new Date(); […]

Android sqlite3_limit?

Я хотел бы использовать функцию sqlite3_limit для установки максимального количества прикрепленных баз данных. sqlite3_limit(db, SQLITE_LIMIT_ATTACHED, 62); Вопрос 1 – Как (если вообще) я могу выполнить эту операцию в Android? Я читал здесь http://sqlite.org/limits.html – пункт 11. По умолчанию существует мягкий предел 10 подключенных баз данных, однако я только что подключил 11 баз данных успешно. Вопрос […]