Je rencontre le problème décrit par KB321843 et this question. Les deux ne parlent que de MS SQL Server 2005 (ou plus ancien), alors que je cours 2008.FK multiples avec ON SUPPRIMER CASCADE à la même table (MSSQL2008)
J'aurais vraiment eu l'espoir que cela soit corrigé dans les versions récentes, mais ça ne semble pas être le cas. Quelqu'un pourrait-il confirmer cela (ou, mieux, me dire comment je pourrais le faire fonctionner)?
La sémantique que je veux est très simple: j'ai une référence auto N: M dans un tableau séparé. Cette table a deux FK à la table d'origine et si je supprime une des entrées dans la table "principale", je n'ai plus besoin des connexions aux autres éléments. Même dans le cas mixte de NULL et DELETE, une implémentation directe serait possible. Postgres 8.1 par exemple n'a absolument aucun problème avec ce cas d'utilisation et fonctionne TOTALEMENT comme prévu. –
Que fait Postgres? – gbn
Étant donné une table de connexion (X, Y) où X spécifie ON DELETE CASCADE et Y spécifie ON DELETE SET NULL et contient les tuples (3,2) et (2,3). Après avoir supprimé le tuple avec id = 3 dans la table référencée, la table de connexion contient (2, NULL). Quoi d'autre devrait-il faire ?! –