0% ont trouvé ce document utile (0 vote)
426 vues6 pages

SQLite et Flutter : Guide Pratique

Ce document décrit comment utiliser SQLite pour la persistance de données dans une application Flutter. Il explique les étapes pour configurer SQLite, créer un modèle de données, ouvrir une base de données, créer une table, et effectuer des opérations CRUD sur les données.
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
426 vues6 pages

SQLite et Flutter : Guide Pratique

Ce document décrit comment utiliser SQLite pour la persistance de données dans une application Flutter. Il explique les étapes pour configurer SQLite, créer un modèle de données, ouvrir une base de données, créer une table, et effectuer des opérations CRUD sur les données.
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Data Persistence with SQLite |

Flutter

Chaque fois que vous devez stocker les données sur le local, vous
devez utiliser SQLite pour conserver les données utilisateur.

Pourquoi utilisons-nous SQLite?


SQLite est un choix populaire en tant que logiciel de base de
données intégré pour le stockage local / client dans des
logiciels d'application tels que les navigateurs Web.

Comment utiliser SQLite en flutter?


Avant d'utiliser SQLite, vous devez savoir que

SQLite n'est pas disponible dans un SDK Flutter comme


Android mais nous avons un plugin sqflite qui effectue
exactement toutes les opérations sur la base de données comme
dans Android et iOS.

Le plugin Flutter est le wrapper du code natif écrit en Kotlin


ou java pour Android et swift ou objective-c pour iOS.
PS: le plugin peut également être créé uniquement avec le code
DART
la mise en oeuvre

Étape 1: ajouter les dépendances

Ajoutez des dépendances au fichier [Link].


sqflite:
path_provider :

Pour travailler avec des bases de données SQLite, importez


les packages sqfliteetpath

 Le sqflitepackage fournit des classes et des fonctions qui


vous permettent d'interagir avec une base de données
SQLite.

 Le path_providerpackage fournit des fonctions qui vous


permettent de définir correctement l'emplacement de
stockage de la base de données sur le disque,
comme TemporaryDirectory et ApplicationDocumentsDirectory.

Étape 2: créer une classe modèle

SQLite crée une table pour la classe modèle, les champs de la


classe correspondent aux colonnes de la table. Par conséquent,
les classes ont tendance à être de petites classes de modèle qui
ne contiennent aucune logique. Notre Personclasse représente le
modèle des données de la base de données.
classe Person {
int id;
Nom de chaîne;
Ville de chaîne;

Personne ({ ce .id, ce .name, ce .ville});}


Si nous voulons insérer dans la base de données, nous devons
convertir le Personen unMap
Mappez <String, dynamic > toMap () => {
"id": id,
"name": name,
"city": city,
};

et si nous voulons récupérer à partir de la base de données, nous


devons convertir le Map dans lePerson
factory [Link] (Map <String, dynamic > json) => new
Person (
id: json ["id"],
nom: json ["name"],
ville: json ["city"],
);

Voici à quoi ressemblera notre classe PODO

Étape 3: créer une base de données

Nous créerons une classe distincte en tant que [Link]


pour rendre le code plus modulaire et ajouter toutes les
méthodes requises pour la gestion de la base de données qui
peuvent être accessibles n'importe où dans l'application.

Créer une classe DatabaseProvider


class PersonDatabaseProvider {
DatabaseProvider ._ ();

statique finale PersonDatabaseProvider db =


PersonDatabaseProvider ._ ();
}

Étape 4: ouvrez la base de données


Avant de lire et d'écrire des données dans la base de données,
vous devez ouvrir une connexion à la base de données. Cela
implique deux étapes:

1. Définissez le chemin d'accès au fichier de base de données


en utilisant getDatabasesPathle sqflitepackage du combiné
avec la pathfonction du pathpackage

2. Ouvrez la base de données avec la openDatabasefonction


desqflite
Répertoire du répertoire = attendre
getApplicationDocumentsDirectory ();String path = join
([Link], "[Link]");final Future <Database> database =
openDatabase (chemin);

Étape 5: créer la table

vous devez créer une table pour stocker des informations.


Par exemple, dans notre cas, nous créons une table
appelée Personqui définit les données qui peuvent être
stockées. Dans ce cas, chacun Personcontient
une id, nameet city. Par conséquent, ceux-ci seront représentés
sous forme de trois colonnes dans le Persontableau.

1. Il ids'agit d'un Dart intet sera stocké en tant


que INTEGERtype de données SQLite. Il est également
recommandé d'utiliser un idcomme clé primaire de la table
pour améliorer les délais de requête et de mise à jour.

2. Le nameest un dard String, et sera stocké en tant


que TEXTSQLite Datatype
3. Le cityest également un Dart String, et sera stocké en tant
que TEXTtype de données

Pour éviter d'ouvrir une connexion à la base de données encore


et encore, nous pouvons utiliser ceci:

Étape 6: gestion des données

Nous allons maintenant vous montrer comment effectuer une


opération sur la base de données SQLite.

Requete:

getAllPersons() renverra toute la personne de la base de données


SQLite si disponible.

Insérer:

Supprimer:
Si vous voyez que nous avons deux méthodes, l'une supprime la
ligne avec un identifiant particulier et l'autre supprime toutes les
données présentes dans le tableau, vous pouvez modifier toutes
les requêtes en fonction de vos besoins.

Mise à jour:

Si ces petits extraits de code vous confondent encore, nous avons


le code complet de la classe de base de données:

Étape 7: Utilisation des données

Afin d'utiliser la base de données, nous devons créer l'instance


de la base de données et utiliser la méthode présente dans la
classe de base de données
DatabaseProvider. db

Cela nous aidera à effectuer une opération sur la base de


données.

comme si nous voulons mettre la personne dans la base de


données, nous utiliserons la méthode que nous avons définie
dans notre classe DatabaseProvider
DatabaseProvider. db .getAllPersons ()

et si je veux l'afficher dans la liste, je vais utiliser FututeBuilder:

Vous aimerez peut-être aussi