Diferencia entre revisiones de «Usuario:ManuelRomero/Android/BBDD»

De WikiEducator
Saltar a: navegación, buscar
Línea 38: Línea 38:
  
 
===El API SQLLite===
 
===El API SQLLite===
*El API está definido en el siguiene paquete  '''''android.database.sqlite''''' *http://developer.android.com/reference/android/database/sqlite/package-summary.html
+
 
*En el tenemos las siguientes clases
+
*El API para trabajar con base de datos está definido en los siguientes paquetes
 +
;android.database
 +
:contiene todas las clases para trabajar con bases de datos
 +
;android.database.sqlite
 +
:Aquí tenemos las clases específicas para trabajar con '''''sqlite'''''
 +
*el siguiene paquete  '''''android.database.sqlite''''' *http://developer.android.com/reference/android/database/sqlite/package-summary.html
 +
*Clases del paquete
 
#SQLiteClosable
 
#SQLiteClosable
 
#SQLiteCursor
 
#SQLiteCursor
Línea 69: Línea 75:
 
*La idea es si existe la base de datos la abro, y si no existe la creo
 
*La idea es si existe la base de datos la abro, y si no existe la creo
 
*Tenemos dos manera de interoperar en esta manera
 
*Tenemos dos manera de interoperar en esta manera
#Usando la clase '''''SQLiteDatabase'''''
+
#Usando métodos concretos de la clase '''''SQLiteDatabase''''' concretamente ''openDatabase'' u  ''openOrCreateDatabase''
#Extendiendo la clase abstracta '''''SQLOpenHelper
+
#Extendiendo la clase abstracta '''''SQLOpenHelper''''' que es la forma mas habitual y cómo de realizarlo.
 
====SQLiteDatabase====
 
====SQLiteDatabase====
 
Presenta los siguientes métodos para crear/abrir una base de datos
 
Presenta los siguientes métodos para crear/abrir una base de datos
Línea 81: Línea 87:
 
#
 
#
 
#
 
#
[[Media:Ejemplo.ogg]]
 

Revisión de 12:45 4 ene 2013

Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg




Introducción

Android dentro del API tiene funcionalidad para gestionar una base de datos SQLite
Esto hace que no requeramos ningún driver ni instalar un gestor de bases de datos adicional
SQLite es un motor de bases de datos con una características especiales que le hacen muy atractivas para determinados entornos
  1. Maneja archivos de pequeño tamaño.
  2. Requiere poco espacio en tiempo de ejecución (250MB apx)
  3. no necesita un servidor, no permite concurrencia, está basado en funciones no en servicios, lo que le permite presentar tiempos de respuestas rápidos.
  4. cumple el estándar SQL-92
  5. Es Open Source

Características importantes

  • Presenta los siguientes tipos de datos

Si escribes esto al editar... ...este será el resultado.

Tipos de datos en SQLite
Tipo Declaración del tipo
TEXTO "TEXT"
NUMERO "NUM"
ENTERO "INT"
REAL ""
  • No soporta otros tipos
  • No valida los valores o sea que podemos insertar cadenas de texto en un campo de enteros y el sistema no se queja

SQLite y Android

  • Acceder a la base de datos implica acceder al sistema de ficheros
  • Los ficheros que creemos por defecto se ubicarán el en siguiente directoiro

DATA/data/APP_NAME/databases/FILENAME.

DATA es el directorio donde ubica los ficheros Enviroment.getDataDirectory()
APP_NAME nombre de la aplicación
FILENAME es el nombre del fichero de la base de datos

El API SQLLite

  • El API para trabajar con base de datos está definido en los siguientes paquetes
android.database
contiene todas las clases para trabajar con bases de datos
android.database.sqlite
Aquí tenemos las clases específicas para trabajar con sqlite
  1. SQLiteClosable
  2. SQLiteCursor
  3. SQLiteDatabase
  4. SQLiteOpenHelper
  5. SQLiteProgram
  6. SQLiteQuery
  7. SQLiteQueryBuilder
  8. SQLiteStatement
  • Y las siguientes interfaces
  1. SQLiteCursorDriver
  2. SQLiteDatabase.CursorFactory
  3. SQLiteTransactionListener

Trabajar con Android y SQLLite

Para trabajar con una base de datos debemos realizar unos pasos clásicos

  1. Crear la base de datos y gestionarla
  2. Por crear la base de datos entendemos
    1. Definir la base de datos
    2. Definir su estructura (tablas y campos)
  3. Por gestionarla aludo al hecho de hacer operaciones básicas
    1. Insertar tuplas
    2. Borrar
    3. Modificar
    4. Consultar
  4. A continuacion vamos a ver como se realizan estas acciones con Android como lenguje y SQLLite como gestor de bases de datos relacional

Crear una base de datos

  • Para administar una base de datos tenemos la clase SQLiteDatabase
  • Tenemos dos métodos para abrir / crear una base de datos
  • La idea es si existe la base de datos la abro, y si no existe la creo
  • Tenemos dos manera de interoperar en esta manera
  1. Usando métodos concretos de la clase SQLiteDatabase concretamente openDatabase u openOrCreateDatabase
  2. Extendiendo la clase abstracta SQLOpenHelper que es la forma mas habitual y cómo de realizarlo.

SQLiteDatabase

Presenta los siguientes métodos para crear/abrir una base de datos

  1. openDatabase
  2. openOrCreateDatabase'

Los parámetros que se pueden pasar son los siguientes