Programación Multimedia - 2 DAM - Bases de Datos en Android - SQLite
Programación Multimedia - 2 DAM - Bases de Datos en Android - SQLite
dispositivos móviles
SQLite
SQLite
Así mismo, por ser de dominio público es gratuito tanto para fines privados como para
comerciales, se puede descargar de forma libre desde su sitio oficial. Es importante mencionar
que SQLite cuenta con varios enlaces a lenguajes de programación entre los que podemos
destacar: Java, C, C ++, JavaScript, C #, Python, VB Script, entre otros.
SQLite
Android incorpora de serie todas las herramientas necesarias para la creación y gestión de
bases de datos SQLite, y entre ellas una completa API para llevar a cabo de manera sencilla
todas las tareas necesarias.
En Android, la forma típica para crear, actualizar, y conectar con una base de datos SQLite será
a través de una clase auxiliar llamada SQLiteOpenHelper, o para ser más exactos, de una clase
propia que derive de ella y que debemos personalizar para adaptarnos a las necesidades
concretas de nuestra aplicación.
SQLite
Primero tenemos que crear un objeto de la clase Helper que hemos personalizado.
Como ya se ha explicado, esto creará o modificará la BBDD.
Una vez tengamos el helper, podemos acceder a ella mediante la interfaz SQLLiteDatabase, en
uno de sus dos modos, de escritura o de lectura.
Es recomendable tener ambas variables en ámbito global y no local.
SQLite
Ahora que ya sabemos crear bases de datos, vamos a ver cómo funcionan las operaciones
de crear, insertar y borrar:
La API de SQLite de Android proporciona dos alternativas para realizar operaciones sobre la
base de datos que no devuelven resultados (entre ellas la
inserción/actualización/eliminación de registros, pero también la creación de tablas, de
índices, etc).
El primero es utilizar el método execSQL() de la clase SQLiteDatabase. Este método permite
ejecutar cualquier sentencia SQL sobre la base de datos, siempre que ésta no devuelva
resultados.
SQLite
/data/data/paquete.java.de.la.aplicacion/databases/nombre_base_datos
/data/data/com.sqlite/databases/DBPatatas
Primero tenemos que irnos a la carpeta de la instalación de Android Studio, para poder
acceder al comando adb.
Con adb devices vemos los emuladores disponibles
Con adb –s emulador Shell accedemos a la Shell o terminal del emulador.
Si no podemos acceder a la BBDD que queremos, nos metemos como administrador
utilizando su.
SQLite
Cuando estemos en la ruta donde se encuentre la bbdd, abrimos dicho archivo utilizando
sqlite3 y el nombre de la BBDD.
Con .tables vemos las tablas que forman la base de datos, y ya aquí podemos ejecutar
nuestras consultas como si estuviéramos en una BBDD relacional cualquiera.
SQLite
Para practicar, descargaos el proyecto de ejemplo desde el GitHub, y revisad el código,
ejecutadlo para ver cómo funciona y qué hace, qué hace cada función…
Vamos a añadir algunas mejoras antes de hacer la práctica:
1. Modifica el handler del botón ‘buscar’ para poder hacer unas búsquedas por el nombre
o el precio
2. Actualiza el handler del botón de modificar para que no se modifique siempre el objeto
con id 2 si no que se modifique el precio de todas las patatas que tengan el nombre que
introduzca el usuario en el cuadro de texto.
3. Modifica el handler del botón de buscar todos para agrupar las patatas según el nombre
y el número de registros con el mismo nombre (función count(*))