Post B5BexHMsD2X7GGW5NQ by AYz3YbdyXoXnWNtcau.aeris@firefish.imirhil.fr
(DIR) More posts by AYz3YbdyXoXnWNtcau.aeris@firefish.imirhil.fr
(DIR) Post #B5BexHMsD2X7GGW5NQ by AYz3YbdyXoXnWNtcau.aeris@firefish.imirhil.fr
0 likes, 0 repeats
Quelqu’un connaîtrait-il une astuce pour migrer des données d’une db postgres qui a été pourrite parce qu’il n’y avait pas de FK à une db clean qui elle possède bien les bonnes FK ?pg_dump/pg_restore va skip l’import à la moindre erreur de clef… J’ai tenté du --rows-per-insert=1 sur pg_dump, mais ça chie au réimport pour une raison inconnue… 🤷
(DIR) Post #B5Bfk7aNMsWD707coa by CleyFaye@mastodon.top
0 likes, 0 repeats
@aeris Je dirais `SET CONSTRAINTS ALL DEFERRED` avant l'import; ça devrait les vérifier au commit.Cela dit, s'il manque réellement une clé à la fin, ça foirera quoi qu'il arrive.
(DIR) Post #B5Bfk7oCXTZrnsafMe by AYz3YbdyXoXnWNtcau.aeris@firefish.imirhil.fr
0 likes, 0 repeats
@CleyFaye@mastodon.top Le but serait que ça foire pas mais que ça vire les lignes incorrectes (des fantômes)
(DIR) Post #B5BjR8BVJiQ9HegkrY by raphastronome@mamot.fr
0 likes, 0 repeats
@aeris @CleyFaye Peut être faire quelque chose du genre `DELETE FROM table WHERE colonne NOT IN (SELECT id FROM other);` pour retirer les lignes qui ne correspondent pas à la FK. Plusieurs DELETE si il y a plusieurs FK.A voir selon le cas, en tout cas fais bien des sauvegardes avant et teste d'abord sur une copie.Attention aussi si tu peux avoir des NULL sur les colonnes, je crois qu'il y a une subtilité.
(DIR) Post #B5BjR8TEFobCAcyuUS by AYz3YbdyXoXnWNtcau.aeris@firefish.imirhil.fr
0 likes, 0 repeats
@raphastronome@mamot.fr @CleyFaye@mastodon.top Ça va se finir comme ça oui…