Au lieu du comportement de triggersment avec les tables CDC

Nous avons un triggersur à l'écran (pour les opérations DML). nous essayons de surveiller l'activité sur la vue avec des tables CDC et nous avons défini la table de base (celle sur laquelle la vue est basée) comme une table CDC.

Lorsque nous exécutons une command de mise à jour sur la vue (au lieu de triggersur), la sortie dans les tables cdc est une ligne pour la suppression et une ligne pour la mise à jour (code d'opération 1 et code d'opération 2). avec la valeur bedore (code d'opération 3) et une ligne avec la valeur après (code d'opération 4).

Savez-vous si le comportement normal lors de la mise à jour intervient lorsque le triggersur est déclenché derrière la scène (supprimer l'ancien logging et insert un nouvel logging)?

Merci pour l'aide.

Toute mise à jour peut être implémentée en tant que mise à jour fractionnée (suppression de l'ancienne valeur, insertion d'une nouvelle valeur). Le processeur de requêtes le fait généralement pour protéger la protection d'Halloween (et vous avez dû postr votre question aujourd'hui!). Votre mise à jour particulière avait un plan large (mise à jour fractionnée). Vous devriez toujours être prêt à gérer ce cas, donc cela n'a pas vraiment d'importance. Le fait d'avoir un triggersur de mise à jour au lieu de forcer un plan large ou non est un problème orthogonal.