2008-09-22 9 views

Répondre

14

En général¹, oui, les suppressions en cascade sont effectuées dans la même transaction (ou sous-transaction) que votre suppression d'origine. Cependant, vous devriez lire la documentation de votre serveur SQL.

¹ L'exception est si vous utilisez une base de données qui ne prend pas en charge les transactions, comme MySQL avec les tables MyISAM.

+0

En général? quand ne sont-ils pas dans une transaction? –

+1

Whe la base de données ne supporte pas transasctions par exemple. Voir MySQL avec les tables MyISAM ... –

+0

@ Cd-MaN MyISAM ne prend pas non plus en charge les clés étrangères, donc vous devrez chercher assez fort un cas où cette exception entre en jeu. – Brilliand

2

Les suppressions en cascade sont en effet atomiques, elles seraient peu utiles sans cette propriété. C'est dans la documentation.

+1

+1 pour "ils seraient de peu d'utilité sans cette propriété" :-) Très vrai. –

1

Il est à noter que un événement en cascade devrait être atomique (c'est-à-dire avec une transaction). Mais, comme le souligne Joel Coehoorn, consultez la documentation de votre base de données.

+0

En fait, ce n'est pas Joel Coehoorn qui le souligne. Si vous n'êtes pas sûr de l'auteur, il vaut mieux utiliser "cette réponse" pour créer un lien vers son permalien. – tzot

Questions connexes