Simptome
Luați în considerare următorul scenariu:
-
În SQL Server 2014 sau 2016, aveți mai multe tabele, fiecare având o restricție de cheie primară specificată.
-
Creați un lanț în cascadă pentru acele tabele, utilizând restricția de cheie externă împreună cu acțiunea la ștergere în cascadă.
-
Creați un trigger după ștergere pentru fiecare tabel.
-
Ștergeți un rând din tabelul părinte. Acest lucru declanșează triggerele după ștergere și lanțul de acțiune la ștergere în CASCADă.
În acest scenariu, Triggerele pot apărea în ordinea greșită.
Rezolvare
Această problemă este remediată în următoarele actualizări cumulative pentru SQL Server:
Actualizarea cumulativă 5 pentru SQL Server 2016 RTM
Actualizarea cumulativă 2 pentru SQL Server 2016 SP1
Actualizarea cumulativă 5 pentru SQL Server 2014 SP2
Actualizarea cumulativă 11 pentru SQL Server 2014 Service Pack 1
Fiecare nouă actualizare cumulativă pentru SQL Server conține toate remedierile rapide și de securitate care au fost incluse în actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
Cea mai recentă actualizare cumulativă pentru SQL Server 2016
Cele mai recente actualizări cumulative pentru SQL Server 2014
StareMicrosoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.
Referințe
Restricții de integritate referențială în cascadă
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.