Trigger beforedelete vs delete rule de clef étrangère

Résolu
vincentstryckmans Messages postés 228 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 25 octobre 2006 - 30 nov. 2005 à 13:53
guilhemh Messages postés 36 Date d'inscription lundi 22 avril 2002 Statut Membre Dernière intervention 12 décembre 2005 - 12 déc. 2005 à 23:42
Bonjour,

Quelle est la meilleure solution pour effacer les record d'une table enfant lorsqu'un record de la table parent est effacé :

1. Avoir une clef étrangère entre la table enfant et la table parent, sans règle lors de l'effacement
Utiliser un trigger beforedelete de la table parent pour effacer les record de la table enfant

2. Avoir une clef étrangère entre la table enfant et la table parent avec une cascade pour la règle d'effacement

Merci de votre aide

Et comme disait ma grand-mère : il y a toujours du soleil derrière les nuages.

Vincent Stryckmans.

1 réponse

guilhemh Messages postés 36 Date d'inscription lundi 22 avril 2002 Statut Membre Dernière intervention 12 décembre 2005
12 déc. 2005 à 23:42
A mon avis le plus propre est de mettre en place une cascade à moins
que tu ais besoin de traitements spécifique intermédiaire, gestion de
transaction, logs...

Les cascades sont gérées directement par le SGBD ce qui te simplifie la maintenance...



A ta disposition
3
Rejoignez-nous