On dirait que vous recherchez une architecture hors ligne. Bref, dans cette architecture, votre application communique uniquement avec la base de données locale. Votre base de données locale (SQLite) communiquera avec la base de données du serveur (MySQL).
Pour synchroniser deux bases de données, vous devez envoyer (via l'API) les données mises à jour ou nouvelles de la base de données locale au serveur sur lequel vous gérerez la fusion des données, puis récupérer les données fusionnées pour les enregistrer s'il y a une mise à jour ou de nouvelles données sur les données de la base de données du serveur, elles seront renvoyées à la base de données locale.
Le problème le plus important auquel vous serez confronté lors de la synchronisation des bases de données est celui des conflits de données provenant de plusieurs applications clientes. Par exemple, deux personnes mettent à jour les mêmes données en même temps. Vous devez donc prendre certaines décisions côté serveur, par exemple quelles données doivent avoir une priorité plus élevée.
Dans une base de données locale, vous devez conserver l'état de synchronisation de chaque table, tel que la dernière heure des données synchronisées et la dernière heure mise à jour. Sur la base de données du serveur, vous avez besoin de la dernière date et heure mise à jour pour chaque table. Ensuite, à l'aide de ces dates, vous pouvez déterminer si des données nouvelles ou mises à jour doivent être synchronisées.
Voulez-vous garder les données synchronisées entre votre appareil et votre serveur hors ligne ou en ligne ?
Utiliser le package : https://pub.dev/packages/objectbox
Pour plus d'informations, veuillez visiter : https://objectbox.io/sync
On dirait que vous recherchez une architecture hors ligne. Bref, dans cette architecture, votre application communique uniquement avec la base de données locale. Votre base de données locale (SQLite) communiquera avec la base de données du serveur (MySQL).
Pour synchroniser deux bases de données, vous devez envoyer (via l'API) les données mises à jour ou nouvelles de la base de données locale au serveur sur lequel vous gérerez la fusion des données, puis récupérer les données fusionnées pour les enregistrer s'il y a une mise à jour ou de nouvelles données sur les données de la base de données du serveur, elles seront renvoyées à la base de données locale.
Le problème le plus important auquel vous serez confronté lors de la synchronisation des bases de données est celui des conflits de données provenant de plusieurs applications clientes. Par exemple, deux personnes mettent à jour les mêmes données en même temps. Vous devez donc prendre certaines décisions côté serveur, par exemple quelles données doivent avoir une priorité plus élevée.
Dans une base de données locale, vous devez conserver l'état de synchronisation de chaque table, tel que la dernière heure des données synchronisées et la dernière heure mise à jour. Sur la base de données du serveur, vous avez besoin de la dernière date et heure mise à jour pour chaque table. Ensuite, à l'aide de ces dates, vous pouvez déterminer si des données nouvelles ou mises à jour doivent être synchronisées.