A persistência de dados é um aspecto crucial no desenvolvimento de aplicativos. No Flutter, uma das formas mais comuns de persistir dados é usando o SQLite, um mecanismo de banco de dados SQL embutido. Neste capítulo, vamos explorar como você pode integrar o SQLite em seu aplicativo Flutter para persistir dados.

O que é SQLite?

O SQLite é um mecanismo de banco de dados SQL que permite armazenar dados em um arquivo local no dispositivo do usuário. É leve, sem servidor e não requer uma configuração separada. O SQLite é ideal para armazenar dados simples e é amplamente utilizado em dispositivos móveis e navegadores da web.

Por que usar SQLite em Flutter?

Flutter é uma estrutura de desenvolvimento de aplicativos móveis que permite criar aplicativos nativos com uma única base de código. No entanto, o Flutter não fornece uma maneira embutida de persistir dados. Portanto, precisamos usar pacotes de terceiros, como o SQLite, para essa finalidade.

Como usar SQLite em Flutter

Para começar a usar o SQLite em Flutter, primeiro precisamos adicionar a dependência ao nosso arquivo 'pubspec.yaml':

dependencies:
  flutter:
    sdk: flutter
  sqflite: ^1.3.2+1

Em seguida, importamos o pacote sqflite em nosso arquivo Dart:

import 'package:sqflite/sqflite.dart';

Com a dependência instalada e importada, podemos começar a usar o SQLite. Primeiro, precisamos abrir um banco de dados. Podemos fazer isso usando a função openDatabase:

final Future database = openDatabase(
  // Especifique o caminho para o banco de dados
  join(await getDatabasesPath(), 'my_database.db'),
);

Esta função cria um banco de dados se ele não existir e abre-o se existir. A função getDatabasesPath() obtém o caminho para o diretório onde o aplicativo pode armazenar dados privados do usuário.

Criando tabelas

Uma vez que o banco de dados está aberto, podemos criar tabelas nele. Para isso, podemos usar a função onCreate que é chamada quando o banco de dados é criado pela primeira vez:

final Future database = openDatabase(
  join(await getDatabasesPath(), 'my_database.db'),
  onCreate: (db, version) {
    return db.execute(
      "CREATE TABLE my_table(id INTEGER PRIMARY KEY, name TEXT)",
    );
  },
  version: 1,
);

Operações CRUD

Com o banco de dados e as tabelas criados, podemos realizar operações CRUD (Create, Read, Update, Delete).

Para inserir dados, usamos a função insert:

Future insertData(MyData data) async {
  final Database db = await database;

  await db.insert(
    'my_table',
    data.toMap(),
    conflictAlgorithm: ConflictAlgorithm.replace,
  );
}

Para ler dados, usamos a função query:

Future> getData() async {
  final Database db = await database;

  final List> maps = await db.query('my_table');

  return List.generate(maps.length, (i) {
    return MyData(
      id: maps[i]['id'],
      name: maps[i]['name'],
    );
  });
}

Para atualizar dados, usamos a função update:

Future updateData(MyData data) async {
  final db = await database;

  await db.update(
    'my_table',
    data.toMap(),
    where: "id = ?",
    whereArgs: [data.id],
  );
}

Para excluir dados, usamos a função delete:

Future deleteData(int id) async {
  final db = await database;

  await db.delete(
    'my_table',
    where: "id = ?",
    whereArgs: [id],
  );
}

Em resumo, o SQLite é uma excelente opção para a persistência de dados em aplicativos Flutter. Ele fornece uma maneira fácil de armazenar dados localmente no dispositivo do usuário, tornando seu aplicativo mais responsivo e menos dependente de uma conexão de rede constante. Com a ajuda do pacote sqflite, podemos realizar todas as operações de banco de dados necessárias de maneira fácil e eficaz.

Agora responda o exercício sobre o conteúdo:

_Qual é a função do SQLite no desenvolvimento de aplicativos Flutter?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Persistência de dados com SQLite em Flutter: Introdução ao SQLite

Próxima página do Ebook Gratuito:

255Persistência de dados com SQLite em Flutter: Introdução ao SQLite

4 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto