DB Browser for SQLite

While there are a variety of standalone SQLite clients, in terms of desktop use, DB Browser for SQLite is arguably the most popular. It is open source, available for Linux/macOS/Windows, and is fairly easy to use.

Copying Your Database

It has no specific integration with Android or Android Studio, though, which means that you will need to copy your database off of your device or emulator and onto your development machine.

Ideally, your app’s process is terminated when you do this, so your app does not attempt to use the database while the copy operation is ongoing.

If you are using ordinary Room, your database will be in the default location for SQLite databases for your app. From the standpoint of development tools, for the primary device user, that will be:

/data/data/.../databases/

…where ... is your application ID.

In there, you will find a database file, with the name that you gave it in your RoomDatabase (e.g., stuff.db). Particularly if the app opened the database and did not explicitly close it, you will also see two additional files, with the same name as the database plus -shm and -wal extensions. You will need to copy all of these files to your development machine, most likely using Device File Explorer from Android Studio.

You can then open it in DB Browser for SQLite using the “Open Database” toolbar button, selecting the database file itself (not the -shm or -wal files, if any).

Basic Database Operations

Like Database Inspector, DB Browser for SQLite gives you a tree of the various tables in the “Database Structure” tab, where you can see the schema for a table:

DB Browser for SQLite, Showing Table Schema
DB Browser for SQLite, Showing Table Schema

The “Browse Data” tab gives you a tabular view of the contents of a selected table, chosen via the drop-down in the tab’s own toolbar:

DB Browser for SQLite, Showing Table Contents
DB Browser for SQLite, Showing Table Contents

The “Execute SQL” tab lets you enter in your own queries or other operations (e.g., INSERT statements) and run them against your database. For queries or other statements that return results, you get a table showing those results:

Note, though, that if you modify the data and wish to persist those changes, you need to click the “Write Changes” toolbar button.

When you are done, if you click the “Close Database” button, the SQLite database will be closed cleanly, leaving you with just the database file and without any -shm or -wal file.

If you wish, you could then copy the database back to the device, using Device File Explorer. However:


Prev Table of Contents Next

This book is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license.