Die DELETE-Anweisung steht in Konflikt mit der REFERENCE-Einschränkung in ASP.NET Dynamic Data

8

Ich habe zwei Tabellen Application_User und Application_User_Access. Application_User_Access-Tabelle hat eine Fremdschlüsseleinschränkung mit Application_User-Tabelle.

Wenn ich einen Datensatz in der Application_User-Tabelle lösche, erhalte ich die Ausnahme "Die DELETE-Anweisung, die mit der REFERENCE-Einschränkung in Konflikt steht".

Dies geschieht in der ASP.NET Dynamic Data Entities-Webanwendung. Ich möchte alle untergeordneten Datensätze in diesem Fall löschen und schließlich den übergeordneten Datensatz löschen. Wie implementiert man das?

    
Anand 25.10.2011, 18:59
quelle

1 Antwort

12

Sie können eine kaskadierende Löschung für Application_User_Access -Tabelle implementieren. Dazu müssen Sie Ihr DB-Schema ein wenig modifizieren. Entfernen Sie konkret die vorherige Referenz aus der Tabelle Application_User_Access in die Tabelle Application_User und fügen Sie eine neue hinzu:

%Vor%

Beachten Sie, dass ON DELETE CASCADE thing ist. Dies bedeutet, dass der Datensatz des Fremdschlüssels, der auf ihn verweist, immer dann entfernt wird, wenn der Primärschlüsselsatz gelöscht wird.

    
Andrei 25.10.2011 20:25
quelle

Tags und Links