Je reçois des erreurs de blocage lorsque j'essaie d'exécuter un sproc avec une instruction delete. Qu'est-ce qui se passe est que j'ai une ligne de table de contraintes FK qui est en cours de mise à jour en même temps que la ligne de la table que je supprime à laquelle il est lié. Les données en cours de mise à jour dans la table de contraintes ne sont plus importantes et la récupération pour les données mises à jour ne sera plus accessible à personne, pour une raison quelconque, il se peut que cette mise à jour et suppression soient effectuées simultanément. Donc, j'ai besoin de supprimer pour être l'opération principale.Comment surmonter les blocages
Que dois-je faire pour arrêter un blocage comme celui-ci?
DELETE FROM Storefront.Sidelite WHERE ID = @SideliteID
; Vous trouverez ci-dessous une capture d'écran d'une table Sidelite et du tableau de contraintes de taille ci-dessous.
Ok, il y a lit pas qui aura lieu ici. Le seul type de choses qui se passent est de nombreuses mises à jour de la table des tailles alors que la table Sidelite essaie de supprimer un enregistrement dont la taille est en cours de mise à jour et cela provoque un blocage.
Je dois arrêter toutes les opérations dans la table des tailles pendant qu'une suppression a lieu dans la table des latéraux et ensuite, je vais supprimer l'enregistrement de taille associé dans un déclencheur.
Quels indices avez-vous? Qu'est-ce que l'instruction 'UPDATE'? Quel RDBMS et version? Quelle est la définition de la contrainte FK? Est-ce que ça cascade? –