Maison >base de données >tutoriel mysql >Qu'est-ce qu'une procédure stockée et comment créer une procédure stockée MySQL ?
Une procédure stockée, dans le contexte d'un langage informatique classique, peut être définie comme un sous-programme de type sous-programme stocké dans une base de données. Dans le contexte de MySQL, il s'agit d'une instruction SQL déclarative stockée dans le répertoire de la base de données. Avant d'écrire des procédures stockées dans MySQL, nous devons vérifier la version car MySQL 5 a introduit les procédures stockées. Voici la syntaxe pour créer une procédure stockée :
CREATE [DEFINER = { user | CURRENT_USER }] PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] routine_body proc_parameter: [ IN | OUT | INOUT ] param_name type type: Any valid MySQL data type characteristic: COMMENT 'string' | LANGUAGE SQL | [NOT] DETERMINISTIC | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } | SQL SECURITY { DEFINER | INVOKER } routine_body: Valid SQL routine statement
Voici un exemple où nous avons créé une procédure simple pour obtenir tous les enregistrements de la table 'student_info' qui contiennent les données suivantes−
mysql> select * from student_info; +-----+---------+------------+------------+ | id | Name | Address | Subject | +-----+---------+------------+------------+ | 100 | Aarav | Delhi | Computers | | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Jaipur | Literature | | 110 | Rahul | Chandigarh | History | +------+--------+------------+------------+ 4 rows in set (0.00 sec)
Maintenant , avec la requête suivante, nous avons créé une procédure stockée nommée allrecords()
mysql> Delimiter // mysql> Create Procedure allrecords() -> BEGIN -> Select * from Student_info; -> END// Query OK, 0 rows affected (0.02 sec) mysql> DELIMITER ;
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!