0% encontró este documento útil (0 votos)
146 vistas

Uso de SQLite Con Android

Este documento resume el uso de SQLite con Android. Explica que SQLite es una base de datos liviana que se puede usar en dispositivos móviles sin servidor. Detalla cómo crear una base de datos SQLite en una aplicación Android, incluyendo clases como SQLiteOpenHelper y métodos como query(), insert(), update() y delete(). También brinda ejemplos de cómo consultar, insertar, actualizar y eliminar datos de una base de datos SQLite.

Cargado por

Rubén Beaumont
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
146 vistas

Uso de SQLite Con Android

Este documento resume el uso de SQLite con Android. Explica que SQLite es una base de datos liviana que se puede usar en dispositivos móviles sin servidor. Detalla cómo crear una base de datos SQLite en una aplicación Android, incluyendo clases como SQLiteOpenHelper y métodos como query(), insert(), update() y delete(). También brinda ejemplos de cómo consultar, insertar, actualizar y eliminar datos de una base de datos SQLite.

Cargado por

Rubén Beaumont
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 16

Uso de SQLite con Android

Ing. Alex Jimnez [email protected]

Agenda
Introduccin a SQLite. Creacin de una base de datos SQLite en Android.

Aplicacin ejemplo Insercin, Consulta, Eliminacin, y Actualizacin. Uso de IDEs para SQLite.

Ing. Alex Jimnez [email protected]

Introduccin a SQLite
SQLite es un motor de base de datos open source que no necesita de un servidor y acepta varias sentencias del estndar SQL-92. Esta provisto de capacidades para consulta de datos relacionales (select), manipulacin de datos (insert,delete,update) y definicin de datos (create table, create view, etc). Precisa de poca configuracin y es utilizado en dispositivos mviles. Lugar de descarga y documentacin : http://www.sqlite.org

Ing. Alex Jimnez [email protected]

Android y SQLite
Android provee de APIs que soportan nativamente la base de datos SQLite en el paquete: android.database.sqlite Algunas de las clases y sus mtodos ms utilizadas:
Creacin y actualizacin de la base de datos:
SQLiteOpenHelper public void onCreate(SQLiteDatabase db) public void onUpgrade(SQLiteDatabase db, int verAnterior, int verNueva) public SQLiteDatabase getReadableDataBase() public SQLiteDatabase getWritableDatabase(), etc

Manipulacin/Mantenimiento de la base de datos:


SQLiteDataBase query(), execSQL(), insert(), delete(), update() beginTransaction(), endTransaction(), rawQuery(),etc..
Ing. Alex Jimnez [email protected]

Creacin de una base de datos SQLite en Android


Ubicacin de la base de datos en el dispositivo/emulador:
/data/data/paquete.java.de.la.aplicacion/databases/nombre_base_datos

Esto es posible verlo haciendo uso del DDMS (Dalvik Debug Monitor Server) en el tab File Exporer

Ing. Alex Jimnez [email protected]

Creacin de una base de datos SQLite en Android


Ejemplo de base de datos:

Ing. Alex Jimnez [email protected]

Ejemplo de base de datos

Ing. Alex Jimnez [email protected]

Creacin de una base de datos SQLite en Android


Cuando se cree una instancia a esta clase pueden suceder cualquiera de las siguientes acciones: Si la base de datos ya existe y su versin actual coincide con la solicitada simplemente se realizar la conexin con ella. Si la base de datos existe pero su versin actual es anterior a la solicitada, se llamar automticamente al mtodo onUpgrade() para convertir la base de datos a la nueva versin y se conectar con la base de datos convertida.

Si la base de datos no existe, se llamar automticamente al mtodo onCreate() para crearla y se conectar con la base de datos creada.
Ing. Alex Jimnez [email protected]
8

Creacin de una base de datos SQLite en Android


import android.app.Activity; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; public class AndroidBaseDatos extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //Abrimos la base de datos 'ProductosDB' en modo escritura DatabaseHelper prodDB = new DatabaseHelper(this, "ProductosDB", null, 1); SQLiteDatabase db = prodDB.getWritableDatabase(); //Si hemos abierto correctamente la base de datos if(db != null) { //Insertamos 5 productos de ejemplo for(int i=1; i<=5; i++) { //Generamos los datos double precio=5*i; String descripcion = "Descripcion" + i; //Insertamos los datos en la tabla Productos db.execSQL("INSERT INTO Productos (descripcion,precio) " + "VALUES (" + descripcion + "," + precio +")"); } //Cerramos la base de datos db.close(); } } }

Creacin de una base de datos SQLite en Android


Para Insertar/Actualizar/Eliminar es posible utilizar el mtodo execSQL de la clase SQLiteDatabase de la siguiente forma: //Insertar un registro db.execSQL("INSERT INTO Productos(descripcion,precio) VALUES (Impresor Laser,120.50) "); //Eliminar un registro db.execSQL("DELETE FROM Productos WHERE _id=3 "); //Actualizar un registro db.execSQL("UPDATE Productos SET precio=precio*1.1 WHERE _id=1");

Ing. Alex Jimnez [email protected]

10

Creacin de una base de datos SQLite en Android


Para consultar es posible utilizar el mtodo rawQuery de la clase SQLiteDatabase de la siguiente forma: //consultar un registro Cursor c = db.rawQuery(" SELECT descripcion,precio FROM Productos WHERE _id=1 "); Un objeto Cursor contiene los registros resultantes producto de la consulta ejecutada con el mtodo rawQuery() Es posible manipular un objeto Cursor mediante una serie de mtodos como por ejemplo: moveToFirst(): mueve el puntero del cursor al primer registro devuelto. moveToNext(): mueve el puntero del cursor al siguiente registro devuelto.
11

Creacin de una base de datos SQLite en Android


Los mtodos moveToFirst() y moveToNext() devuelven TRUE en caso de haber realizado el movimiento correspondiente del puntero sin errores, es decir, siempre que exista un primer registro o un registro siguiente, respectivamente. Recorrido del objeto Cursor del caso anterior: //Nos aseguramos de que existe al menos un registro if (c.moveToFirst()) { //Recorremos el cursor hasta que no haya ms registros do { String descripcion= c.getString(0); double precio = c.getDouble(1); } while(c.moveToNext()); }
12

Creacin de una base de datos SQLite en Android


Otra alternativa disponible en la API de Android es utilizar los mtodos insert(), update() y delete() proporcionados tambin con la clase SQLiteDatabase. Estos mtodos permiten realizar las tareas de insercin, actualizacin y eliminacin de registros de una forma parametrizada , separando tablas, valores y condiciones en parmetros independientes de estos mtodos.

De igual forma se cuenta con el mtodo query() que puede recibir varios parmetros como group by,having, order by; para retornar un objeto Cursor y poder recorrerlo como en el ejemplo anterior.

13

Aplicacin ejemplo

Ing. Alex Jimnez [email protected]

14

Uso de IDEs para SQLite


SQLite Studio: http://sqlitemanager.codeplex.com

Ing. Alex Jimnez [email protected]

15

Uso de IDEs para SQLite


SQLite Administrator: http://sqliteadmin.orbmu2k.de/

Ing. Alex Jimnez [email protected]

16

También podría gustarte