Vous n'êtes pas identifié(e).
Bonjour,
J'ai une table dans ma base de données qui est alimentée par des CSV via un petit utilitaire. Mon problème est qu'il arrive qu'après un import de CSV il y ait quelques doublons. J'ai une requête SQL pour supprimer mes doublons mais je souhaiterai qu'elle s'exécute à chaque fois qu'une insertion de données ait lieu car pour l'instant je suis obligé de charger manuellement ma requête après chaque import...
Après quelques recherches j'ai vu qu'un trigger pourrait faire ça mais je ne connais absolument pas la chose.
Pourriez vous m'aider ?
Merci
Hors ligne
Je ne suis pas sûr qu'un trigger soit une bonne idée, ça va ralentir chaque insertion dans cette table.
Et sinon, pour les triggers, la documentation est là : http://docs.postgresql.fr/9.6/triggers.html
Guillaume.
Hors ligne
Il suffirait de créer une fonction en plpgsql qui serait appelée en fin d'import dans l'utilitaire d'import.
Hors ligne
Pourquoi ne pas créer une contrainte sur vos doublons ? A partir de la 9.5, vous avez la possibilité de faire un INSERT ... ON CONFLICT DO NOTHING
Hors ligne