En este tutorial aprenderás a usar el Database Inspector de Android Studio para depurar tus bases de datos SQLite creadas con Room.
Database Inspector
Esta herramienta, disponible desde Android Studio 4.1, te permite observar y manipular los esquemas SQLite de tus Apps en tiempo real.
Para abrirlo sigue estos pasos:
- Corre tu app en un emulador/dispositivo que ejecute una versión igual o mayor al SDK 26
- Ve a View > Tool Window > Database Inspector
- Selecciona el proceso asociado a tu app, normalmente distinguido por el nombre del paquete
- Ubícate en la jerarquía con el nombre de tu base de datos
Tomemos como referencia nuestra App de listas de compras como ejemplo. Al iniciar el Database Inspector, tendríamos que seleccionar el esquema shopping_list_database
.
En este panel de bases de datos encontraremos las cinco tablas que creamos y una vista.
Inspeccionar Tablas
Puedes ver los registros de la tabla que desees haciendo doble click sobre ella.
Esta vista te permitirá:
- Organizar las tablas por pestañas
- Refrescar la tabla para comprobar cambios
- Ver cambios de la base de datos en vivo
- Ordenar los datos por columna
- Cambiar el número de filas por página
- Cambiar el valor de las celdas
Por ejemplo:
Si cambias el nombre de una lista de compras, podrás ver como el observador notifica el cambio en el RecyclerView
.
Cambios Con LiveData
Si marcas la opción Live updates del panel de datos, los cambios que realices desde la interfaz, se verán reflejados en la tabla.
Por ejemplo:
Marca Live updates y prueba eliminar una lista de compras.
Consultar Datos
El Database Inspector también te permite usar sentencias SQL sobre tu esquema de base de datos en tiempo real.
Consultas De DAOs
Una de las formas de hacerlo es a través de la acción emergente Run Sqlite statement in Database Inspector.
Esta se habilita directamente desde las anotaciones @Query
o @DatabaseView
cuando tu App está corriendo.
Ejemplo:
Ejecuta la sentencia del método ShoppingListDao.shoppingLists()
.
Si la sentencia tiene parámetros bindeables, se te pedirán los valores en un diálogo.
Ejemplo: Consulta una lista de compras por Id.
Consultas Personalizadas
Por último, si deseas escribir consultas particulares presiona el botón Open New Query Tab, selecciona tu esquema y construye el código SQLite.
También es puedes usar comandos como INSERT
, UPDATE
, DELETE
, CREATE TABLE
, etc. Y si usas Room con LiveData
o Flow
, como en el ejemplo que tenemos, todos los cambios se reflejaran en la interfaz.
Únete Al Discord De Develou
Si tienes problemas con el código de este tutorial, preguntas, recomendaciones o solo deseas discutir sobre desarrollo Android conmigo y otros desarrolladores, únete a la comunidad de Discord de Develou y siéntete libre de participar como gustes. ¡Te espero!