Je veux garder une base de données constamment mise à jour avec les informations que je récupère d'une API. Les données que je reçois peuvent être incomplètes mais je devrais en avoir la plus grande partie. Jusqu'à présent, j'ai une clause try/except où j'essaie d'insérer une ligne dans ma base de données et à moins que je ne mette à jour la ligne. Le problème principal est que je ne supprime aucune ligne. Je veux avoir une copie des données du serveur à tout moment, ou au moins rester proche de lui. Je dois en quelque sorte garder une trace des lignes que j'ai besoin de supprimer au fil du temps parce que je veux m'assurer que ce n'est pas seulement le grattoir qui me donne des données incomplètes. Par ailleurs, j'utilise Python et psycopg2. Je pense que c'est un problème courant mais je ne trouve pas de meilleure solution pour créer une nouvelle base de données, la mettre à jour plusieurs fois avec ce que j'ai actuellement et ensuite remplacer les bases de données. Aucune suggestion? Je n'aime pas non plus le fait que je m'attends à ce que la clause d'exception soit souvent déclenchée ici ...Copiez une base de données via des mises à jour/insertions et des suppressions dans postgresql.
Merci d'avance!
Upsert semble bien mais ne gère pas les suppressions? Aussi, j'aimerais ajouter une colonne id à ma base de données. Ce sera la seule colonne unique donc il n'y aura pas de conflit à contrarier? Comme les données que je reçois n'a pas d'ID. Je vais lui en assigner une quand il sera inséré pour la première fois. Mais alors je suppose que je dois faire correspondre les lignes et en quelque sorte jeter un conflit à mettre à jour? Merci de votre aide! –