La persistencia de datos es un aspecto crucial del desarrollo de aplicaciones. En Flutter, una de las formas más comunes de conservar datos es usar SQLite, un motor de base de datos SQL integrado. En este capítulo, exploremos cómo puede integrar SQLite en su aplicación Flutter para conservar los datos.

¿Qué es SQLite?

SQLite es un motor de base de datos SQL que le permite almacenar datos en un archivo local en el dispositivo del usuario. Es liviano, no requiere servidor y no requiere una configuración separada. SQLite es ideal para almacenar datos simples y se usa ampliamente en dispositivos móviles y navegadores web.

¿Por qué usar SQLite en Flutter?

Flutter es un marco de desarrollo de aplicaciones móviles que te permite crear aplicaciones nativas con una única base de código. Sin embargo, Flutter no proporciona una forma integrada de conservar los datos. Por lo tanto, necesitamos utilizar paquetes de terceros como SQLite para este propósito.

Cómo usar SQLite en Flutter

Para comenzar a usar SQLite en Flutter, primero debemos agregar la dependencia a nuestro archivo 'pubspec.yaml':

dependencias:
  aleteo:
    SDK: aleteo
  sqflite: ^1.3.2+1

A continuación, importamos el paquete sqflite a nuestro archivo Dart:

importar 'paquete:sqflite/sqflite.dart';

Con la dependencia instalada e importada, podemos comenzar a usar SQLite. Primero, necesitamos abrir una base de datos. Podemos hacer esto usando la función openDatabase:

base de datos final Future = openDatabase(
  // Especifica la ruta a la base de datos
  unirse(esperar getDatabasesPath(), 'my_database.db'),
);

Esta función crea una base de datos si no existe y la abre si existe. La función getDatabasesPath() obtiene la ruta al directorio donde la aplicación puede almacenar los datos privados del usuario.

Crear tablas

Una vez abierta la base de datos, podemos crear tablas en ella. Para eso podemos usar la función onCreate que se llama cuando se crea la base de datos por primera vez:

base de datos final Future = openDatabase(
  unirse(esperar getDatabasesPath(), 'my_database.db'),
  onCreate: (db, versión) {
    devolver db.execute (
      "CREAR TABLA my_table(id INTEGER PRIMARY KEY, nombre TEXTO)",
    );
  },
  versión 1,
);

Operaciones CRUD

Con la base de datos y las tablas creadas, podemos realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar).

Para insertar datos, utilizamos la función insertar:

Futuro insertData(MyData data) async {
  base de datos final db = espera base de datos;

  esperar db.insert(
    'mi mesa',
    datos.toMap(),
    Algoritmo de conflicto: Algoritmo de conflicto.reemplazar,
  );
}

Para leer datos, utilizamos la función de consulta:

Futuro> getData() asíncrono {
  base de datos final db = espera base de datos;

  Lista final> mapas = await db.query('my_table');

  return Lista.generar(maps.length, (i) {
    devolver MisDatos(
      id: mapas[i]['id'],
      nombre: mapas[i]['nombre'],
    );
  });
}

Para actualizar los datos, utilizamos la función de actualización:

Futuro updateData(datos MyData) asíncrono {
  base de datos final = espera la base de datos;

  esperar db.update(
    'mi mesa',
    datos.toMap(),
    donde: "identificación =?",
    dondeArgs: [datos.id],
  );
}

Para eliminar datos, utilizamos la función de eliminación:

Futuro eliminarDatos(int id) async {
  base de datos final = espera la base de datos;

  esperar db.delete (
    'mi mesa',
    donde: "identificación =?",
    dondeArgs: [id],
  );
}

En resumen, SQLite es una excelente opción para la persistencia de datos en aplicaciones Flutter. Proporciona una manera fácil de almacenar datos localmente en el dispositivo del usuario, lo que hace que su aplicación tenga mayor capacidad de respuesta y sea menos dependiente de una conexión de red constante. Con la ayuda del paquete sqflite, podemos realizar todas las operaciones necesarias en la base de datos de forma fácil y efectiva.

Ahora responde el ejercicio sobre el contenido:

_¿Cuál es el papel de SQLite en el desarrollo de aplicaciones Flutter?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Persistencia de datos con SQLite en Flutter: Introducción a SQLite

Siguiente página del libro electrónico gratuito:

255Persistencia de datos con SQLite en Flutter: Introducción a SQLite

3 minutos

¡Obtén tu certificado para este curso gratis! descargando la aplicación Cursa y leyendo el libro electrónico allí. ¡Disponible en Google Play o App Store!

Disponible en Google Play Disponible en App Store

+ 6,5 millones
estudiantes

Certificado gratuito y
válido con código QR

48 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo, audio y texto.