La persistencia de datos es una de las partes fundamentales del desarrollo de aplicaciones. En Flutter, una de las formas más comunes de conservar datos es usar SQLite, una base de datos liviana y eficiente que se puede incorporar fácilmente a una aplicación. En este módulo, discutiremos cómo actualizar datos en una base de datos SQLite usando Flutter y Dart.
SQLite es una base de datos relacional que le permite almacenar, recuperar, actualizar y eliminar datos de manera eficiente. Es muy utilizado en aplicaciones móviles debido a su ligereza y sencillez. Para usar SQLite en Flutter, necesitamos usar un paquete llamado sqflite.
Instalando sqflite
Para empezar, necesitamos agregar sqflite a nuestro proyecto. Podemos hacer esto agregando la siguiente línea a nuestro archivo pubspec.yaml:
dependencias: aleteo: SDK: aleteo sqflite: ^2.0.0+3
Ahora podemos importar sqflite a nuestro archivo Dart:
importar 'paquete:sqflite/sqflite.dart';
Actualizando datos en SQLite
Para actualizar datos en SQLite, primero debemos abrir una conexión a la base de datos. Podemos hacer esto usando el método openDatabase. Este método devuelve un objeto de base de datos que podemos usar para interactuar con la base de datos.
A continuación, necesitamos crear una declaración SQL UPDATE para actualizar los datos. La declaración ACTUALIZAR modifica los valores de una o más columnas en una o más filas de una tabla. La sintaxis básica de una declaración UPDATE en SQLite es la siguiente:
ACTUALIZAR nombre_tabla SET columna1 = valor1, columna2 = valor2, ... DONDE condición;
En Flutter, podemos ejecutar una declaración SQL usando el método rawUpdate del objeto Base de datos. Por ejemplo, para actualizar la edad de un usuario, podemos hacer lo siguiente:
int recuento = esperar db.rawUpdate( 'ACTUALIZAR Usuario SET edad =? DONDE nombre = ?', ['nueva_edad', 'nombre_antiguo'] );
Este código actualiza la columna 'edad' a 'nueva_edad' para todas las filas donde la columna 'nombre' es igual a 'nombre_antiguo'. El método rawUpdate devuelve el número de filas afectadas por la actualización.
También podemos utilizar el método de actualización del objeto Base de datos para actualizar los datos. Este método acepta el nombre de la tabla y un mapa de valores de columna. Por ejemplo:
int recuento = esperar db.update( 'Usuario', {'edad': 'nueva_edad'}, donde: 'nombre =?', dondeArgs: ['nombre_antiguo'] );
Este código hace lo mismo que el ejemplo anterior, pero utiliza el método de actualización en lugar de rawUpdate. El método de actualización es más seguro y fácil de usar que rawUpdate, ya que escapa automáticamente los valores y evita la inyección de SQL.
Conclusión
Actualizar datos en una base de datos SQLite en Flutter es una tarea sencilla y directa. Con el paquete sqflite, podemos ejecutar fácilmente sentencias SQL para actualizar los datos. Recuerde cerrar siempre la conexión de la base de datos cuando termine de usarla para evitar pérdidas de memoria.
En el siguiente módulo, analizaremos cómo eliminar datos de una base de datos SQLite en Flutter. ¡Estén atentos!