Une instruction SQL "Update" peut spécifier que plusieurs lignes soient mises à jour lors de l'exécution d'une instruction unique. Lorsqu'on exécute une instruction "Update" non soumise au contrôle de validation, DB2 UDB évalue toutes les contraintes au fur et à mesure de la mise à jour de chaque ligne. Cependant
Mises à jour SQL multilignes
lorsque vous exécutez
une instruction « Update » soumise au contrôle de validation, DB2 UDB diffère l’évaluation
de toutes les contraintes clé primaire et unique jusqu’à ce que toutes les lignes
aient été mises à jour. DB2 UDB diffère également la vérification des contraintes
clés étrangères, exception faite de celles qui spécifient une règle « Restrict ».
Ainsi, une instruction « Update » multilignes comprend deux étapes:
Elle effectue tout d’abord les opérations suivantes pour mettre à jour chaque
ligne :
1. Appel du trigger exécuté avant la mise à jour.
2. Vérification des contraintes de clés étrangères pour toutes les tables dépendantes
qui spécifient « On Update Restrict ».
3. Mise à jour de la ligne et contrôles (par exemple données décimales invalides)
autres que les contraintes.
4. Appel du trigger exécuté après la mise à jour.
5. Vérification des contraintes de contrôle.
Puis elle effectue les opérations suivantes pour chaque ligne mise à jour :
1. Vérification des contraintes de clés étrangères pour toutes les tables dépendantes
qui spécifient « On Update No Action ».
2. Vérification de toutes les contraintes de clés étrangères de cette table.
3. Vérification des contraintes de clé primaire et d’unicité.Une application peut
exécuter une instruction SQL pour mettre à jour un ensemble de colonnes de clé
primaire de plusieurs lignesMême si cela n’arrive pas souvent, une application
peut exécuter une instruction SQL pour mettre à jour un ensemble de colonnes de
clé primaire de plusieurs lignes, comme dans l’exemple ci-dessous :
Customer Update
Set CustomerId =
CustomerId + 1
Cette instruction peut aboutir si la table Customer est le parent dans une contrainte
de clé étrangère qui spécifie « On Update No Action ».
En revanche, elle échouerait presque à coups sûrs si la contrainte de clé étrangère
indiquait « On Update Restrict ». Pour aboutir lorsque l’option « No Action » est
spécifiée, toutes les lignes dépendantes doivent disposer d’une ligne parent correspondant
à la fin de l’instruction « Update ». Dans le cas de « Restrict », aucune mise à jour
particulière de la ligne Customer ne peut laisser une ligne dépendante sans correspondant.
Ainsi, cette instruction SQL nécessite un ordonnancement très précis des mises
à jour de la ligne Customer pour réussir.
Téléchargez cette ressource
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- L’essor de l’IA propulse les cyberattaques à des niveaux records
- L’IA sous contrôle : un impératif pour la souveraineté des entreprises
- CESIN : un baromètre qui mesure le risque cyber réel
- Face aux ransomwares, la résilience passe par les sauvegardes immuables
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
