Curseur Oracle FOR UPDATE

Résumé: dans ce didacticiel, vous apprendrez comment utiliser le curseur modifiable Oracle pour mettre à jour les données dune table.

Introduction à Oracle Cursor FOR UPDATE

Parfois, vous voulez verrouiller un ensemble de lignes avant de pouvoir les mettre à jour dans votre programme. Oracle fournit la clause FOR UPDATE de linstruction SELECT dans un curseur modifiable pour effectuer ce type de mécanisme de verrouillage.

Voici la syntaxe pour déclarer un curseur modifiable:

La nouvelle syntaxe ici est les mots-clés FOR UPDATE.

Une fois le curseur ouvert, Oracle verrouillera toutes les lignes sélectionnées par linstruction SELECT ... FOR UPDATE dans les tables spécifiées dans FROM clause. Et ces lignes resteront verrouillées jusquà ce que le curseur soit fermé ou que la transaction soit terminée avec COMMIT ou ROLLBACK.

Notez quOracle verrouille toutes les lignes renvoyées par la SELECT ... FOR UPDATE pendant la mise à jour, par conséquent, vous devez avoir une clause WHERE pour sélectionner uniquement les lignes nécessaires à verrouiller.

Si vous avez une colonne spécifique que vous souhaitez mettre à jour, vous pouvez la lister dans la clause FOR UPDATE comme suit:

Dans ce cas, Oracle verrouille uniquement les lignes de la table dont le nom de colonne est répertorié dans la clause FOR UPDATE OF.

Notez que si vous utilisez uniquement la clause FOR UPDATE et nincluez pas une ou plusieurs colonnes après le mot-clé OF, Oracle le fera alors verrouille toutes les lignes sélectionnées dans toutes les tables répertoriées dans la clause FROM.

Exemple Oracle Cursor FOR UPDATE

Considérez ce qui suit exemple.

Comment ça marche.

  • Commencez par déclarer un curseur modifiable qui met à jour les crédits des clients dont les crédits sont supérieurs à zéro.
  • Suivant , bouclez sur les lignes dans les curseurs.
  • Ensuite, obtenez le nombre de commandes pour chaque client.
  • Ensuite, attribuez lincrément de crédit en fonction du nombre de commandes.
  • Enfin, mettez à jour le crédit du client.

Dans ce didacticiel, vous avez appris à utiliser le curseur modifiable dOracle pour mettre à jour les données dune table.

  • Ce didacticiel vous a-t-il été utile?
  • OuiNon

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *