Rechercher dans le manuel MySQL

13.6.6 Cursors

MySQL supports cursors inside stored programs. The syntax is as in embedded SQL. Cursors have these properties:

  • Asensitive: The server may or may not make a copy of its result table

  • Read only: Not updatable

  • Nonscrollable: Can be traversed only in one direction and cannot skip rows

Cursor declarations must appear before handler declarations and after variable and condition declarations.

Example:

  1. CREATE PROCEDURE curdemo()
  2.   DECLARE a CHAR(16);
  3.   DECLARE b, c INT;
  4.   DECLARE cur1 CURSOR FOR SELECT id,data FROM test.t1;
  5.   DECLARE cur2 CURSOR FOR SELECT i FROM test.t2;
  6.   DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
  7.  
  8.   OPEN cur1;
  9.   OPEN cur2;
  10.  
  11.   read_loop: LOOP
  12.     FETCH cur1 INTO a, b;
  13.     FETCH cur2 INTO c;
  14.     IF done THEN
  15.       LEAVE read_loop;
  16.     END IF;
  17.     IF b < c THEN
  18.       INSERT INTO test.t3 VALUES (a,b);
  19.     ELSE
  20.       INSERT INTO test.t3 VALUES (a,c);
  21.     END IF;
  22.   END LOOP;
  23.  
  24.   CLOSE cur1;
  25.   CLOSE cur2;

Rechercher dans le manuel MySQL

Traduction non disponible

Le manuel MySQL n'est pas encore traduit en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.

Document créé le 26/06/2006, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/mysql-rf-cursors.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :en Manuel MySQL : https://dev.mysql.com/

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut