Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Cómo conectar y visualizar una base de datos en Flutter usando SQLite, Monografías, Ensayos de Desarrollo de Software

Aprenda a trabajar con una base de datos SQLite en Flutter, desde la adición de dependencias hasta la creación de tablas y la manipulación de datos. Este documento proporciona pasos detallados para crear una base de datos, definir un modelo de datos, insertar y recuperar datos, actualizar registros y eliminar registros.

Tipo: Monografías, Ensayos

2020/2021

Subido el 15/11/2022

Leylan241218
Leylan241218 🇲🇽

2 documentos

1 / 7

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
UNIVERSIDAD TECNOLOGICA
DE LA COSTA GRANDE DE
GUERRERO
(UTCGG)
Grupo: IDGS 9-2
Docente: Ing. Eduardo
Hernandez Deloya
Alumno: Alan Rosado
Morales
Investigación
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Cómo conectar y visualizar una base de datos en Flutter usando SQLite y más Monografías, Ensayos en PDF de Desarrollo de Software solo en Docsity!

UNIVERSIDAD TECNOLOGICA

DE LA COSTA GRANDE DE

GUERRERO

(UTCGG)

Grupo: IDGS 9 - 2

Docente: Ing. Eduardo

Hernandez Deloya

Alumno: Alan Rosado

Morales

Investigación

Inestigar como conectar y visualizar una base de datos en flutter.

  1. Añadir las dependencias
  • Para trabajar con bases de datos SQLite, importa los complementos sqflite y path.
  • El complemento sqflite proporciona clases y funciones que te permiten interactuar con una base de datos SQLite.
  • El complemento path proporciona funciones que te permiten definir correctamente la ubicación para almacenar la base de datos en el disco. dependencies: flutter: sdk: flutter sqflite: path:
  1. Definir el modelo de datos del Dog.
  • Antes de crear la tabla para almacenar información en Dogs, tómate unos minutos para definir los datos que deben almacenarse. Para este ejemplo, define una clase Dog que contenga tres datos: Un id único, el nombre (name), y la edad (age) del perro. content_copy class Dog { final int id; final String name; final int age; Dog({this.id, this.name, this.age}); }
  1. Abre la base de datos
  • Antes de leer y escribir en la base de datos, debe abrir una conexión a dicha base de datos. Esto implica dos pasos:
  • Define la ruta al archivo de base de datos utilizando getDatabasesPath del complemento sqflite combinado con la función path del complemento path.
  • Abra la base de datos con la función openDatabase de sqflite // Abre la base de datos y guarda la referencia. final Future database = openDatabase( // Establecer la ruta a la base de datos. Nota: Usando la función join del // complemento path es la mejor práctica para asegurar que la ruta sea correctamente // construida para cada plataforma.

// Convierte en un Map. Las llaves deben corresponder con los nombres de las // columnas en la base de datos. Map<String, dynamic> toMap() { return { 'id': id, 'name': name, 'age': age, }; } } // A continuación, define la función para insertar dogs en la base de datos Future insertDog(Dog dog) async { // Obtiene una referencia de la base de datos final Database db = await database; // Inserta el Dog en la tabla correcta. También puede especificar el // conflictAlgorithm para usar en caso de que el mismo Dog se inserte dos veces. // En este caso, reemplaza cualquier dato anterior. await db.insert( 'dogs', dog.toMap(), conflictAlgorithm: ConflictAlgorithm.replace, ); } // Ahora, puedes crear un Dog y agregarlo a la tabla dogs! final fido = Dog( id: 0, name: 'Fido', age: 35, ); await insertDog(fido);

  1. Recuperar la lista de Dogs
  • Ahora que tienes un Dog almacenado en la base de datos, puedes consultar la base de datos por un Dog específico o una lista de dogs! Esto implica dos pasos:
  • Ejecutar una consulta (query) sobre la tabla dogs. Esto deberá retornar List
  • Convertir List en List

// Un método que recupera todos los dogs de la tabla dogs Future<List> dogs() async { // Obtiene una referencia de la base de datos final Database db = await database; // Consulta la tabla por todos los Dogs. final List<Map<String, dynamic>> maps = await db.query('dogs'); // Convierte List<Map<String, dynamic> en List. return List.generate(maps.length, (i) { return Dog( id: maps[i]['id'], name: maps[i]['name'], age: maps[i]['age'], ); }); } // Ahora, puedes usar el método anterior para recuperar todos los dogs! print(await dogs()); // Imprime una lista que contiene a Fido

  1. Actualizar un Dog en la base de datos
  • Después de haber insertado alguna información en la base de datos, es posible que desees actualizar esa información más adelante. Para ello, utiliza el método update del complemento sqflite.
  • Esto implica dos pasos:
  • Convertir el Dog en un Map
  • Usar una cláusula where para asegurarse de actualizar el Dog correcto Future updateDog(Dog dog) async { // Obtiene una referencia de la base de datos final db = await database; // Actualiza el Dog dado await db.update( 'dogs', dog.toMap(), // Aseguúrate de que solo actualizarás el Dog con el id coincidente where: "id = ?", // Pasa el id Dog a través de whereArg para prevenir SQL injection whereArgs: [dog.id], ); }

Bibliografia

Persistencia de datos con SQLite. (s. f.). Flutter. https://esflutter.dev/docs/cookbook/persistence/sqlite