Élément OnDelete (SSDL)
Dans le langage SSDL (Store Schema Definition Language), l'élément OnDelete reflète le comportement d'une base de données lors de la suppression d'une ligne qui participe à une contrainte de clé étrangère. Si la valeur définie de l'action est Cascade, les lignes qui font référence à une ligne en cours de suppression sont également supprimées. Si la valeur définie de l'action est None, les lignes qui font référence à une ligne en cours de suppression ne sont pas également supprimées. Un élément OnDelete est un élément enfant d'un élément End.
Un élément OnDelete peut avoir les éléments enfants suivants (dans l'ordre répertorié) :
Documentation (zéro ou un élément) ;
éléments Annotation (zéro, un ou plusieurs).
Attributs applicables
Le tableau ci-dessous décrit les attributs qui peuvent s'appliquer à l'élément OnDelete.
Nom d'attribut | Requis | Valeur |
---|---|---|
Action |
Oui |
Cascade ou None. (La valeur Restricted est valide mais a le même comportement que None.) |
Remarque : |
---|
Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément OnDelete.Toutefois, les attributs personnalisés ne peuvent pas appartenir à un espace de noms XML réservé pour le langage SSDL.Les noms qualifiés complets de deux attributs personnalisés quelconques ne peuvent pas être identiques. |
Exemple
L'exemple suivant illustre un élément Association qui définit la contrainte de clé étrangère FK_CustomerOrders. L'élément OnDelete indique que toutes les lignes de la table Orders qui font référence à une ligne particulière de la table Customers seront supprimées si la ligne de la table Customers est supprimée.
<Association Name="FK_CustomerOrders">
<End Role="Customers"
Type="ExampleModel.Store.Customers" Multiplicity="1">
<OnDelete Action="Cascade" />
</End>
<End Role="Orders"
Type="ExampleModel.Store.Orders" Multiplicity="*" />
<ReferentialConstraint>
<Principal Role="Customers">
<PropertyRef Name="CustomerId" />
</Principal>
<Dependent Role="Orders">
<PropertyRef Name="CustomerId" />
</Dependent>
</ReferentialConstraint>
</Association>
Voir aussi
Concepts
Vue d'ensemble d'Entity Framework
Spécification SSDL
Autres ressources
Spécifications CSDL, SSDL et MSL
ADO.NET Entity Data Model Tools