Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
5 / 5 / 0
Регистрация: 14.11.2012
Сообщений: 111

Подключение к базе данных, кторая хранится в памяти устройста

04.03.2014, 15:59. Показов 1846. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!
Есть база данных sqlite, которая лежит в sdcard. Подключаюсь к базе следующим образом:
Java
1
2
String dbfile = sdcard.getAbsolutePath() + File.separator+ "database.sql";
database = SQLiteDatabase.openDatabase(dbfile, null, SQLiteDatabase.OPEN_READONLY);
Данных метод работает только на андроид 4.2+. Это судя по отзывам пользователей.
Есть еще метод, который уже работает на всех устройстах, но увы мне не подходит, так как этот метод изменят сам файл базы данных. Ниже сам метод:
Java
1
database = SQLiteDatabase.openOrCreateDatabase(dbfile, null);
Подскажите, что можно сделать в данном случае? Главная задача, открыть базу данных без каких либо изменений самой базы, тоесть READONLY! Спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.03.2014, 15:59
Ответы с готовыми решениями:

Выполнить операции по формуле, которая хранится в базе данных
Можно ли выполнить операции по формуле, которая хранится в базе данных. Например, динамически будут созданы тектбоксы с именами А1, А2,...

Вывод переменной из массива, значение которой хранится в базе данных
Долго пробую сделать вывод переменной из массива, но не выходит. Я новичок. чуть более месяца как начал разбираться. Извиняюсь заранее,...

Подключение к базе данных и вывод данных в DataGridView завершается с ошибкой
Подскажите что не так с кодом выкидывает разные ошибки Сейчас пишет:Error: .Net SqlClient Data Provider: Подключение к серверу успешно ...

1
5 / 5 / 0
Регистрация: 14.11.2012
Сообщений: 111
13.03.2014, 04:41  [ТС]
Проблема частично решена! В первом случае база открывалась в режиме только для чтения. А на некоторых устройствах требовалась таблица android_metadata, которой не существовало. Немного погуглив, я нашел, что эта таблица должна всегда присутствовать. Отсюда первый метод не работал. Поэтому если кто создает базу данных вне приложения, то не забудьте включить данную таблицу(android_metadata). Второй метод само собой работал, так как мог редактировать базу и отсюда создал таблицу android_metadata самостоятельно.

НО! Судя из отчетов пользователей, база данных открывается далеко не у всех. Прилагаю 2 ошибки и надеюсь на вашу помощь!

Java
1
2
android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
android.database.sqlite.SQLiteException: unable to open database file
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.03.2014, 04:41
Помогаю со студенческими работами здесь

Подключение к базе данных
Привет! Мне надо написать прогу на с#. В ней нужно обращаться к локальной базе данных(которую я мастерю в проекте). Нужно вставлять...

Подключение к базе данных
Здравствуйте, заполняю форму элементами вручную. не могу понять как заполнить DataSet данными из адаптера. Подскажите пожалуйста чего не...

Подключение к базе данных
ДОБРЫЙ ДЕНЬ УВАЖАЕМЫЕ ФОРУМ ЧАТ! вопрос такой: у меня в проекте БД с аксесс когда запускаю выдает ошибку файл нот фаунд а вообще запускаю...

Подключение к базе данных
Объясните начинающему PHP-исту: это нормально, или нет - для каждого запроса к серверу заново подключаться к базе данных? Во всех...

Подключение к базе данных
у меня такя проблемма стоит роутер bsd у него два интерфейса выход в инет и внутренняя сеть на внутренней сети стоит сервер баз данных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru