|
|
avr
13
2006
|
Les procédures stockées de MySQL |
|
|
|
Programmation -
Base de données
|
|
Ecrit par Kamal AOUDA
|
|
13-04-2006 |
|
Les procédures stockées de MySQL
Les procédures
stockées sont de nouvelles fonctionnalités introduites dans la version 5.0 de
MySQL. Au moment où nous avons rédigé cet article, cette version était encore en
phase de test. Les procédures stockées fournissent un gain de performances parce
que moins d'informations sont échangées entre le serveur et le client. Le revers
de la médaille est que la charge de travail du serveur augmente parce qu’il
centralise et exécute tout le code SQL. Les situations dans lesquels les
procédures stockées sont utiles sont :
* Des applications clientes écrites dans différents langages et tournant sur
différentes plateformes (celles-ci peuvent utiliser les procédures stockées
comme point d’interaction).
* Des applications où les opérations et les données traitées par les procédures
stockées sont confidentielles (par exemple sur le site d’une banque les
procédures stockées permettent de s’assurer que les utilisateurs n'ont aucun
accès direct aux tables).
Dans MySQL 5.0 les procédures stockées nécessitent la création d’un type de
table spécial appelé proc. Cette table est créée automatiquement durant
l'installation de MySQL 5.0 mais il est possible de convertir et mettre à jour
des tables déjà existantes si on souhaite migrer d’une version antérieure (la
procédure de mise à jour est décrite en détail à l’adresse :
http://dev.mysql.com/doc/mysql/fr/upgrading-grant-tables.html ).
Les procédures stockées sont créées avec la commande CREATE PROCEDURE. Leur
appel se fait à l’aide de la commande CALL.
Syntaxe
CREATE PROCEDURE sp_name ([parameter[,...]])
[characteristic ...] routine_body
La liste de paramètres entre parenthèses est obligatoire. S'il n'y a pas de
paramètres, une liste vide doit être quand même utilisée (voir exemple).
create procedure SHOW_SUPPLIERS ()
SELECT SUPLLIERS.NAME_SU, CAFE.NAME_CAFE
FROM SUPPLIERS, CAFE
WHERE SUPPLIERS.SU_ID = CAFE.SU_ID
order by NAME_SU
Pour renommer une procédure stockée ou changer ses caractéristiques, il faut
utiliser la commande ALTER PROCEDURE.
Syntaxe :
ALTER PROCEDURE sp_name [characteristic ...]
characteristic:
NAME newname
| SQL SECURITY {DEFINER | INVOKER}
| COMMENT string
Pour effacer une procédure stockée, il faut utiliser la commande drop suivie de
son nom.
Syntaxe :
DROP PROCEDURE [IF EXISTS] sp_name
La procédure à suivre pour appeler une procédure stockée à partir de JDBC est
décrite
dans cet article.
Pour plus de détails sur les procédures stockées consulter la documentation
disponible à l’adresse :
http://dev.mysql.com/doc/mysql/fr/stored-procedure-syntax.html
|
|
Beginning PHP 5 and MySQL E-Commerce: From Novice to Professional |
|
New Page 2
Livre à
l'intention des développeurs déjà familiarisés avec PHP et MySQL. Il
contient plusieurs exemples qui montrent comment développer des
applications de commerce électronique de qualité. Outre les questions
relatives au design et à la programmation, ce livre donne des conseils
pour augmenter les ventes en ligne et diminuer le coût de traitement des
commandes grâce aux services web XML.
Lien sur le site d'Apress.
Références
http://www.apress.com/book/bookDisplay.html?bID=356
Cristian Darie,
Mihai Bucica ,
ISBN: 1-59059-392-8 ,
568 pp.,
Nov 2004
|
|
|