d4:c05

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
d4:c05 [2025/10/01 15:10] – [3. Fonctions stockées] dthevenotd4:c05 [2025/10/01 17:44] (Version actuelle) – [6. Bonnes pratiques professionnelles] dthevenot
Ligne 1: Ligne 1:
 ====== D4-C05 : Procédures stockées et fonctions avec MariaDB ====== ====== D4-C05 : Procédures stockées et fonctions avec MariaDB ======
 +
 +===== Ressources =====
 +
 +  * Documentation officielle [[https://dev.mysql.com/doc/dev/mysql-server/latest/stored_programs.html|MySQL : Stored Programs]]
 +  * Bonnes pratiques SQL : conventions de nommage et gestion des droits
 +    * https://dotclear.placeoweb.com/post/R%C3%A8gles-et-conventions-de-nommage-SQL
 +    * https://fr.ittrip.xyz/sql/sql-naming-conventions|
 +  * Tutoriels professionnels (Zeste de savoir, Percona, MariaDB docs).
 ===== 1. Introduction ===== ===== 1. Introduction =====
 MariaDB (comme MySQL) permet d’écrire du code SQL réutilisable grâce aux **procédures stockées** et aux **fonctions stockées.** MariaDB (comme MySQL) permet d’écrire du code SQL réutilisable grâce aux **procédures stockées** et aux **fonctions stockées.**
Ligne 45: Ligne 53:
 </code> </code>
  
-==== 3. Fonctions stockées ==== +===== 3. Fonctions stockées ===== 
-=== Syntaxe générale ===+==== Syntaxe générale ====
 <code> <code>
 DELIMITER // DELIMITER //
Ligne 61: Ligne 69:
 </code> </code>
  
-=== Appel : ===+==== Appel : ====
 <code>SELECT nom_fonction(valeur);</code> <code>SELECT nom_fonction(valeur);</code>
  
-=== Exemple simple ===+==== Exemple simple ====
 <code> <code>
 DELIMITER // DELIMITER //
Ligne 76: Ligne 84:
 </code> </code>
  
-=== Utilisation : ===+==== Utilisation : ====
 <code>SELECT fn_calcul_tva(100) AS prix_ttc;</code> <code>SELECT fn_calcul_tva(100) AS prix_ttc;</code>
  
-==== 4. Gestion des erreurs ====+===== 4. Gestion des erreurs =====
 On peut intercepter une erreur grâce aux handlers : On peut intercepter une erreur grâce aux handlers :
 <code> <code>
Ligne 89: Ligne 97:
 END; END;
 </code> </code>
-==== 5. Curseurs ====+===== 5. Curseurs =====
 Quand une requête retourne plusieurs lignes, on peut les parcourir : Quand une requête retourne plusieurs lignes, on peut les parcourir :
 <code> <code>
Ligne 104: Ligne 112:
 CLOSE c; CLOSE c;
 </code> </code>
-==== 6. Bonnes pratiques professionnelles ====+===== 6. Bonnes pratiques professionnelles =====
   - Nommage clair : sp_ pour procédures, fn_ pour fonctions.   - Nommage clair : sp_ pour procédures, fn_ pour fonctions.
   - Commenter chaque procédure (auteur, date, rôle, paramètres).   - Commenter chaque procédure (auteur, date, rôle, paramètres).
Ligne 110: Ligne 118:
   - Versionner les scripts SQL dans Git.   - Versionner les scripts SQL dans Git.
   - Donner des droits d’exécution sur les procédures plutôt que des droits directs sur les tables.   - Donner des droits d’exécution sur les procédures plutôt que des droits directs sur les tables.
 +
 +[[d4:A06]]
  • d4/c05.1759324205.txt.gz
  • Dernière modification : 2025/10/01 15:10
  • de dthevenot