A persistência de dados é um elemento crítico na maioria dos aplicativos. Os usuários esperam que suas informações sejam mantidas seguras e acessíveis, independentemente de quando ou onde eles usam o aplicativo. No Flutter, uma das maneiras mais comuns de persistir dados é usando SQLite, um mecanismo de banco de dados SQL leve que é fácil de usar e muito eficiente.
SQLite é uma biblioteca em C que fornece um banco de dados disc-based leve que não requer um processo separado para operar. Isso o torna uma excelente escolha para aplicativos em dispositivos como smartphones e tablets, onde os recursos são limitados. No Flutter, podemos usar a biblioteca sqflite para interagir com bancos de dados SQLite.
Na seção anterior, discutimos como inserir e recuperar dados usando SQLite no Flutter. Neste capítulo, vamos nos concentrar em como excluir dados de um banco de dados SQLite.
Exclusão de dados
Excluir dados de um banco de dados SQLite é uma operação bastante direta. Tudo o que precisamos fazer é executar uma declaração SQL DELETE, que remove registros da tabela especificada que atendem a uma determinada condição.
Para excluir um registro, primeiro precisamos identificar qual registro queremos remover. Isso geralmente é feito usando a cláusula WHERE na declaração DELETE para especificar uma condição que o registro deve atender. Por exemplo, se quisermos excluir um registro com um ID específico, poderíamos usar uma declaração como esta:
DELETE FROM my_table WHERE id = ?
Neste exemplo, o '?' é um parâmetro que podemos substituir pelo ID real que queremos excluir.
Excluindo dados com sqflite
No Flutter, a biblioteca sqflite fornece uma maneira conveniente de executar declarações SQL como esta. Aqui está um exemplo de como podemos usar sqflite para excluir um registro:
FuturedeleteRecord(int id) async { final db = await database; await db.delete( 'my_table', where: 'id = ?', whereArgs: [id], ); }
Neste exemplo, 'database' é uma instância do banco de dados que já abrimos. A função 'delete' do sqflite executa uma declaração DELETE para nós, usando os argumentos que fornecemos.
A cláusula 'where' é uma string que especifica a condição que os registros devem atender para serem excluídos. A 'whereArgs' é uma lista de valores que serão substituídos pelos '?' na cláusula WHERE.
É importante notar que a função 'delete' retorna um Future. Isso significa que a operação é realizada de forma assíncrona, e precisamos usar 'await' para garantir que ela seja concluída antes de prosseguir.
Conclusão
A persistência de dados com SQLite no Flutter é um tópico amplo, mas esperamos que este capítulo tenha lhe dado uma boa compreensão de como excluir dados de um banco de dados SQLite. Lembre-se de sempre testar suas operações de exclusão cuidadosamente para garantir que elas estão funcionando como esperado e não estão excluindo dados indesejados.
Na próxima seção, vamos discutir como atualizar dados em um banco de dados SQLite. Fique ligado!