Capitulo 35 del Módulo 5 Desarrollo del aplicativo

➜ Creación de la Base de Datos Sqflite

Creación de una base de datos en Sqflite en Flutter en Dart | Veremos ¿Cómo implementar una base de datos en Sqlite para una app Flutter con Carrito de Compra?. Integramos los paquetes necesarios y creamos una clase

En esta sección programaremos la base de datos para nuestra aplicación Flutter.

¿Por que necesitamos una base de datos en nuestra aplicación Flutter?

Sencillamente porque la Base de Datos nos ayudará a almacenar la información que necesitamos mostrar en nuestra app, estos datos son extraidos mediante la API Rest en formato JSON.

Dicho esto; vamos a proceder a implementar nuestra base de datos.

  1. En la leccion 34 si recordamos creamos los modelos donde claramente notamos lo siguiente: que necesitamos 3 tablas prioritarias (Categoria, Subcategoria y Producto) para gestionar la data.
  2. En esta lección solo vamos a crear la Base de Datos y las 3 tablas mencionadas.

PAQUETES QUE DEBEMOS AGREGA A PUBSPEC.YAML

  1. Provider
  2. Path_provider
  3. Sqflite

CÓDIGO DE LA CLASE DBHELPER

  1. Agregamos el siguiente código en Bd.dart
import 'package:arequipalocal/modelo/Categoria.dart';
import 'package:arequipalocal/modelo/Producto.dart';
import 'package:arequipalocal/modelo/Subcategoria.dart';
import 'package:path/path.dart';
import 'package:path_provider/path_provider.dart';
import 'package:sqflite/sqflite.dart';
import 'dart:io' as io;
// dbmanager
class DBHelper{
  static Database _db;

  Future<Database> get bd async{
    if(_db != null)
      return _db;
    _db = await iniciarDB();
    return _db;
  }

  iniciarDB() async{
    io.Directory d =await getApplicationDocumentsDirectory();
    String path = join(d.path, "arequipalocal.db" );
    var base = await openDatabase(path, version: 1,onCreate: _onCreate);
    return base;
  }

  void _onCreate(Database db, int version) async{
    await db.execute("CREATE TABLE categoria(id INTEGER, nombre TEXT, urlfoto TEXT)");
    await db.execute("CREATE TABLE subcategoria(id INTEGER, nombre TEXT, urlfoto TEXT, categorias_id TEXT)");
    await db.execute("CREATE TABLE producto(id INTEGER, nombre TEXT, descripcion TEXT, precio REAL, urlfoto TEXT, unidad TEXT, subcategorias_id TEXT )");
    print("TABLAS CREADAS CORRECTAMENTE");
  }

Finalmente, con esto solo tenemos las instrucciones para crear la Base de Datos en un espacio en nuestro dispositivo bajo un nombre y sus correspondientes tablas.

 

 


2310 visitas

Descarga el código del proyecto

Descarga el código fuente del proyecto adquiriendo el curso completo

Comprar

¡Qué aprenderás?

tooltip bs-tooltip-top bs-tooltip-end bs-tooltip-bottom bs-tooltip-start show fade tooltip-inner

Codea Applications

México, Colombia, España, Venezuela, Argentina, Bolivia, Perú