J'ai trois tables dans ma base de données: Events, Jobs et CollectableEntities. Events a un FK nullable pointant vers la PK des Jobs. Les événements et les travaux ont tous deux des clés FK non nulles (qui sont également les PK de la table) pointant vers PK de CollectableEntities. Ces relations FK sont mises en cascade lors de la mise à jour et de la suppression. Fondamentalement, lorsque vous supprimez un CollectableEntity, je veux que l'événement et/ou le travail associé soit également supprimé.Erreur de cascade de base de données
Je suis maintenant essayer de changer les événements relation d'emploi FK pour définir nulle sur la mise à jour ou supprimer, mais je reçois l'erreur suivante:
Error SQL01268: .Net SqlClient Data Provider: Msg 1785, Level 16, State 0, Line 1 Introducing FOREIGN KEY constraint 'FK_Events_Jobs' on table 'Events' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Où se trouve le cycle? Comment puis-je éviter ce problème étant donné que la description ci-dessus est le seul que je veux. (Je suis prêt à faire des changements pour éviter d'autres effets secondaires imprévisibles.)
Pouvez-vous poster la table complète créer des scripts, y compris les FK? –
Désolé, c'est une question pour le travail et je ne peux pas poster le schéma propriétaire réel sans obtenir l'approbation. –