• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Android DB por Cesar Cespedes
 

Android DB por Cesar Cespedes

on

  • 5,565 views

 

Statistics

Views

Total Views
5,565
Views on SlideShare
5,198
Embed Views
367

Actions

Likes
0
Downloads
181
Comments
0

6 Embeds 367

http://limagtug.blogspot.com 256
http://www.gdglima.pe 66
http://gdglima.blogspot.com 37
http://limagtug.blogspot.mx 3
http://limagtug.blogspot.com.es 3
http://gdglimape.blogspot.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Android DB por Cesar Cespedes Android DB por Cesar Cespedes Presentation Transcript

    • Base de Datos en Android
      • Métodos de Almacenamiento de Datos
      • SQLite DataBase
      • Content Provider
      Índice
      • Shared Preferences
        • Datos son almacenados en archivos XML
      • Flat Files
        • InputFileStream
        • OutputFileStream
      • SQLite DataBase
      Métodos de Almacenamiento de Datos
      • Base de Datos relacional para sistemas embebidos.
      • Ocupa únicamente unos 225KB.
      • Implementa la mayor parte del estándar SQL-92, pero con restricciones.
      • Soporte para ALTER_TABLE limitado.
      • Las columnas no tienen tipos.
      • Existen diferentes herramientas, como sqlite3, disponible desde sqlite.org
      • Existen un plugin de Firefox para visualizar bases de datos SQLite (recomendado)
      SQLite DataBase
      • Se utiliza internamente en Firefox y Thunderbird.
      • Lo utilizan la mayoría de las plataformas móviles (iOS, Symbian, Android, BlackBerry OS, webOS).
      • No existen las claves ajenas o foráneas, y en el caso de necesitarlas, debemos forzarlas “a mano”.
      • Es relativamente fácil conectar una base de datos a una lista.
      • La base de datos está protegida dentro de la memoria interna del dispositivo.
      • Mientras trabajamos con el emulador (donde tenemos acceso root), podemos extraer (con DDMS) el archivo de la base de datos y visualizarlo.
      SQLite DataBase
      • SQLiteOpenHelper
        • Nos permite crear, actualizar, y conectar con una base de datos SQLite
        • Es solo un constructor.
        • Métodos:
          • onCreate()
          • onUpgrade()
      • Referencia a la Base de Datos
        • Objeto de tipo SQLiteDatabase.
        • Actualizar, modificar, eliminar datos.
        • Métodos:
          • getReadableDatabase()
          • getWritableDatabase()
      SQLite DataBase
      • Insertar, actualizar y eliminar registros
        • Método execSQL()
          • Permite ejecutar cualquier sentencia SQL sobre la base de datos.
          • No devuelve resultados.
        • Métodos insert(), update() y delete()
          • Uso de parámetros.
          • Separa tablas, valores y condiciones en parámetros independientes.
      SQLite DataBase
      • Selección y recuperación de datos
        • Método rawQuery().
          • Único parámetro, comando SQL.
          • Resultado de la consulta en forma de Cursor.
        • Método query().
          • Varios parámetros:
            • Nombre de la tabla.
            • Array campos, cláusula WHERE.
            • Array con argumentos variables incluidos en el WHERE (si los hay, null caso contrario).
            • Cláusula GROUP BY si existe.
            • Cláusula HAVING si existe.
            • Cláusula ORDER BY si existe.
            • Parámetro opcional con el número de registros a obtener.
          • Resultado de la consulta en forma de Cursor.
      SQLite DataBase
      • Recorrer y manipular un cursor
        • Métodos:
          • moveToFirst(): mueve el puntero del cursor al primer registro devuelto.
          • moveToNext(): mueve el puntero del cursor al siguiente registro devuelto.
      SQLite DataBase
      • ¿Dónde esta mi Base de Datos?
        • Una vez ejecutada por primera vez desde Eclipse la aplicación de ejemplo sobre el emulador de Android (y por supuesto antes de cerrarlo) podemos ir a la perspectiva “DDMS” (Dalvik Debug Monitor Server) de Eclipse y en la solapa “File Explorer” podremos acceder al sistema de archivos del emulador, donde podremos buscar la ruta indicada de la base de datos
        • Abrir una consola de MS-DOS y utilizar la utilidad adb.exe (Android Debug Bridge) situada en la carpeta platform-tools del SDK de Android (en mi caso: c:android-sdk-windowsplatform-tools). En primer lugar consultaremos los identificadores de todos los emuladores en ejecución mediante el comando “adb devices“. Esto nos debe devolver una única instancia si sólo tenemos un emulador abierto “emulator-5554“.
        • Tras conocer el identificador de nuestro emulador, vamos a acceder a su shell mediante el comando “adb -s identificador-del-emulador shell“. Una vez conectados, ya podemos acceder a nuestra base de datos utilizando el comando sqlite3 pasándole la ruta del fichero, para nuestro ejemplo “sqlite3 /data/data/pe.android/databases/DB“. Debe aparecernos el prompt de SQLite “sqlite>“, lo que nos indicará que ya podemos escribir las consultas SQL necesarias sobre nuestra base de datos.
        • “ SELECT * FROM tabla
      SQLite DataBase
      • Mecanismo bastante sencillo para almacenar y acceder a información de manera compartida.
      • Superclase para el manejo y almacenamiento de datos.
      • Es la manera de compartir datos entre procesos y aplicaciones, ya que los datos de cada aplicación se almacenan por separado.
      • Implementa un conjunto estándar de métodos para exponer sus datos de aplicación para ser utilizados, consumidos o creados por otras aplicaciones.
      • Normalmente, se usa con una base de datos (SQLite), puede usarse con otro medio de compartición de variables, un fichero, ó simplemente un ArrayList.
      Content Provider
      • http://developer.android.com
      • http://www.sgoliver.net/blog/?p=1611
      • Professional Android™ 2 Application Development - Reto Meier
      • The Android Developer’s Cookbook Building Applications with the Android SDK - James Steele
      Referencias
    • ¡¡¡ GRACIAS !!! César Céspedes Loayza