Отладка баз данных SQLite на Android

При написании приложений под операционную систему Android, приходится часто использовать базы данных для хранения данных. Я уже показывал шаблон, для создания БД на телефоне, сейчас хочу рассказать про отладку баз данных SQLite в случае работы с Android.

В составе Android SDK есть инструмент, который называется ADB или Android Debug Bridge. Командная строка позволяет связываться с запущенным эмулятором или физическим устройством, на котором ведется отладка.

Этот инструмент находится в папке <ПутьДоSDK>/platform-tools и позволяет делать множество действий от установки приложений до отправки и получения данных от эмулятора (или устройства), соединяться с базой данных и выполнять запросы.

Как работать с ADB:

Для того, что бы работать с ADB нужно отрыть консоль (или терминал в случае с Linux/ Mac OS) и перейти в папку с ADB,  далее написать:

adb shell

или можно написать следующую команду, если нужно подключится к какому-то конкретному эмулятору (очень актуально, когда устройств несколько)

adb -s emulator-xxxx shell

В данном случае, emulator-xxxx — это имя устройства.
Далее нужно соединиться с базой данных на устройстве, сделать это можно так:

# sqlite3 /data/data/<имя пакета>/databases/<имя базы данных>

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

# sqlite3 /data/data/com.example.DB_Example/databases/db_name.db

Консольный вывод после ввода этой команды:

COnsoleDB1Далее можно исполнять запросы к базе данных. Например:

.tables - показывает список таблиц
.output FILENAME - позволяет перенаправить результаты выполнения запроса в файл, например для дальнейшего анализа. 
.mode MODE - позволяет определить формат выходного файла. 
SELECT * FROM table_name - выбрать все записи из таблицы

Пример:

Full_К сожалению, не отображается текст на русском языке

 

Добавить комментарий