J'ai une table sans clé primaire. C'est hors de mon contrôle et je ne peux pas le changer.Déclencheur de mise à jour SQL Server sans clé primaire
Je dois ajouter un déclencheur qui met à jour une colonne lors d'une mise à jour. Y a-t-il un moyen sans clé primaire?
Si besoin de faire:
update myTable
set someField = someValue
where myTable.pkID = inserted.pdID
Cependant, je n'ai pas une clé primaire, donc je ne sais pas comment faire la clause where.
Y a-t-il une colonne ou une combinaison de colonnes unique? –
Il peut y avoir un moyen selon la façon dont les mises à jour sont effectuées. Pensez-vous qu'une clause WHERE soit utilisée dans les mises à jour? Y a-t-il une limite à la colonne (s) qui pourrait être utilisée dans la clause WHERE? –
Des tables temporaires sont créées. Peut-être que cela peut faire ce dont vous avez besoin. https://www.mssqltips.com/sqlservertip/2342/understanding-sql-server-inserted-and-deleted-tables-for-dml-triggers/ –