Maison > base de données > tutoriel mysql > Créer une procédure stockée délimitée dans MySQL

Créer une procédure stockée délimitée dans MySQL

王林
Libérer: 2023-09-09 17:57:08
avant
813 Les gens l'ont consulté

Créer une procédure stockée délimitée dans MySQL

Vous pouvez créer une procédure stockée à l'aide de la commande create procédure. La syntaxe est la suivante −

delimiter //
CREATE PROCEDURE yourStoreProcedureName()
BEGIN
   Declare variable here
   The query statement
END //

delimiter //
Copier après la connexion

Appliquez la syntaxe ci-dessus pour créer une procédure stockée. La requête est la suivante −

mysql> use test;
Database changed
mysql> delimiter //
mysql> create procedure Sp_callTableStoredProcTable()
   −> begin
   −> select *from StoredProcTable;
   −> end //
Query OK, 0 rows affected (0.54 sec)
Copier après la connexion

Vous devez maintenant changer le délimiteur avec ; pour appeler la procédure stockée −

mysql> delimiter ;
Copier après la connexion

Vous pouvez appeler la procédure stockée à l'aide de la commande CALL La syntaxe est la suivante −

CALL yourStoredProcedureName();
Copier après la connexion

La procédure stockée ci-dessus peut être. appelé à l'aide de la commande CALL comme indiqué dans la requête ci-dessous −

mysql> call Sp_callTableStoredProcTable();
Copier après la connexion

Ce qui suit est le résultat −

+-----------+------+
| FirstName | Age  |
+-----------+------+
| John      | 23   |
| Bob       | 24   |
| David     | 20   |
+-----------+------+
3 rows in set (0.03 sec)

Query OK, 0 rows affected (0.06 sec)
Copier après la connexion

Dans ce qui précède, nous avons utilisé la table 'StoredProcTable', qui contient trois enregistrements. Tous les enregistrements sont affichés à l'aide d'une procédure stockée.

Vous pouvez vérifier combien d'enregistrements se trouvent dans la table à l'aide de la procédure stockée -

mysql> delimiter //
mysql> create procedure CountingRecords()
   −> begin
   −> select count(*) as AllRecords from StoredProcTable;
   −> end //
Query OK, 0 rows affected (0.19 sec)

mysql> delimiter ;
Copier après la connexion

Appelez la procédure stockée à l'aide de la commande CALL La requête est la suivante −

mysql> call CountingRecords();
Copier après la connexion

La sortie suivante montre le nombre d'enregistrements −

+------------+
| AllRecords |
+------------+
|          3 |
+------------+
1 row in set (0.31 sec)

Query OK, 0 rows affected (0.33 sec)
Copier après la connexion
.

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!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal