La procédure stockée de MySQL est un ensemble d'instructions SQL stockées dans la base de données qui peuvent être appelées et exécutées à plusieurs reprises. La syntaxe de définition des procédures stockées dans MySQL est fondamentalement la même que celle des fonctions, mais les procédures stockées peuvent contenir davantage d'instructions SQL et d'instructions de contrôle, ce qui permet d'effectuer des opérations plus complexes. Dans les procédures stockées MySQL, les tableaux sont largement utilisés pour le stockage, la lecture, la modification et la suppression de données. Cet article abordera les tableaux dans les procédures stockées MySQL, y compris la définition des tableaux, les opérations sur les tableaux et les cas d'utilisation des tableaux.
1. Définition du tableau
Un tableau est une structure de données ordonnée composée d'éléments de données connectés en série du même type de données. Dans les procédures stockées MySQL, les tableaux peuvent être implémentés par des variables ou des tables. Les tableaux implémentés par des variables peuvent définir des tableaux unidimensionnels ou multidimensionnels ; les tableaux implémentés par des tables peuvent définir des tableaux de tables. Les méthodes de définition de ces trois tableaux sont présentées ci-dessous.
Dans les procédures stockées MySQL, les tableaux unidimensionnels peuvent être implémentés par des variables. La méthode de définition d'un tableau unidimensionnel est similaire à la définition d'une variable. Il vous suffit d'ajouter des crochets [] après le nom de la variable et de spécifier la longueur du tableau entre parenthèses. Par exemple, définissez un tableau entier unidimensionnel :
DECLARE arr1 INT[5];
où arr1 est le nom du tableau, INT est le type de données et 5 est la longueur du tableau. Vous pouvez utiliser une instruction de boucle pour parcourir le tableau, par exemple :
DECLARE i INT;
SET i = 1;
WHILE i <= 5 DO#🎜🎜 #
SET arr1[i] = i; SET i = i+1;
Le code ci-dessus attribue 1 à 5 à chaque élément du tableau.
Tableau multidimensionnelDECLARE arr2 INT3;
où arr2 est le nom du tableau, INT est le type de données, 3 et 4 sont à deux dimensions longueur. Vous pouvez utiliser une instruction à double boucle pour parcourir le tableau, par exemple :
DECLARE i INT
DECLARE j INT; i <= 3 DOSET j = 1; WHILE j <= 4 DO SET arr2[i][j] = i*j; SET j = j+1; END WHILE; SET i = i+1;
id INT, name VARCHAR(20), age INT
);
DECLARE arr3 tab[3];# 🎜🎜# Parmi eux, tab est la structure de la table, id, name et age sont les noms de colonnes de la table ; arr3 est le nom du tableau et 3 est la longueur du tableau. Vous pouvez utiliser une instruction de boucle pour parcourir chaque table du tableau, par exemple :
DECLARE i INT;
SET i = 1;
SET @sql = CONCAT('INSERT INTO arr3[', i, '] VALUES(1, "Tom", 20)'); PREPARE stmt FROM @sql; EXECUTE stmt; SET i = i+1;
END WHILE;
DEALLOCATE PREPARE stmt;
Le code ci-dessus insère une donnée dans chaque table du tableau nommé arr3.
Les opérations sur les tableaux dans les procédures stockées MySQL incluent principalement l'accès, la modification et la suppression du tableau. Les méthodes de ces opérations sont présentées ci-dessous.
L'accès aux éléments du tableau peut être obtenu via des indices, qui commencent à partir de 0. Par exemple, pour accéder au troisième élément du tableau unidimensionnel arr1 :
SELECT arr22;
Accéder à toutes les données de la deuxième table du tableau tableau arr3 :
SELECT * FROM arr3 [2];#🎜 🎜#
Modification du tableau
La modification des éléments du tableau peut être réalisée via des opérations d'affectation. Par exemple, modifiez le 4ème élément du tableau unidimensionnel arr1 : SET arr1[3] = 10;# 🎜🎜# UPDATE arr3[3] SET age = 25 WHERE id = 1;
Suppression du tableauLa suppression d'éléments du tableau peut être effectuée en attribuer l'élément à NULL ou utiliser l'instruction DELETE. Par exemple, supprimez le deuxième élément du tableau unidimensionnel arr1 :
SET arr1[1] = NULL;
Supprimer l'enregistrement avec l'identifiant 1 dans la deuxième table du tableau array arr3 :
DELETE FROM arr3[2] WHERE id = 1;
3 Les cas d'utilisation des tableaux
Les tableaux sont largement utilisés dans les procédures stockées MySQL. Deux cas d'utilisation de tableaux sont présentés ci-dessous, à savoir le tri de tableaux et la conversion de tableaux en chaîne.
Tri des tableauxLe tri des tableaux unidimensionnels peut être réalisé via des instructions de boucle et des instructions conditionnelles. Par exemple, triez par bulles le tableau unidimensionnel arr1 :
DECLARE i INT;
DECLARE j INT;SET j = i+1; WHILE j <= 5 DO IF arr1[i] > arr1[j] THEN SET temp = arr1[i]; SET arr1[i] = arr1[j]; SET arr1[j] = temp; END IF; SET j = j+1; END WHILE; SET i = i+1;
SELECT * FROM arr1 ;
Convertir un tableau en chaîne
DECLARE str VARCHAR(100);
SET i = 1;# 🎜 🎜#SET str = '';IF i = 1 THEN SET str = CONCAT(str, arr1[i]); ELSE SET str = CONCAT(str, ',', arr1[i]); END IF; SET i = i+1;
1,2,3,4,5
4. Résumé
Cet article présente les tableaux dans les procédures stockées MySQL, y compris la définition des tableaux, les opérations sur les tableaux et les cas d'utilisation des tableaux. En tant que méthode de stockage de données ordonnée et efficace, les baies ont une valeur d'application importante dans le processus de stockage. En lisant cet article, je pense que les lecteurs maîtrisent la méthode d'application des tableaux dans les procédures stockées MySQL et peuvent appliquer de manière flexible des tableaux dans le développement réel pour effectuer des opérations plus complexes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!