Question 103

Qu'est-ce qu'une procédure stockée et pourquoi les employer ?

Nombreux sont les gestionnaires de bases de données qui permettent l'utilisation de procédures stockées (SQL Server, Oracle, etc...), mais qu'est-ce au juste ?

Une procédure stockée est tout simplement une routine dont le rôle sera d'exécuter une requête SQL en fonction de paramètres reçus. Et la plupart des gestionnaires de bases de données permettent même de retourner une valeur.

Mais pourquoi employer des procédures stockées plutôt que directement exécuter une ou plusieurs requête SQL ? Voyons les avantages offerts par cette technique :

  • Les procédures stockées permettent une plus grande sécurité. En effet, grâce à elles, vous pouvez retirer tous les droits des utilisateurs sur une table et les obliger à employer vos procédures stockées (qui elles feront ce que vous voulez exactement comme vous le voulez). Tandis qu'un utilisateur qui a des droits d'écriture sur une table peut faire ce qu'il veut.
  • Votre code est centralisé et la maintenance facilitée. En effet, si vous décidez de changer la structure de votre base de données, il vous suffit de mettre à jour votre procédure stockée sans avoir à reprogrammer toutes les applications clientes.
  • Les procédures stockées sont exécutées sur le serveur. Comme en général le serveur est une machine bien plus puissante que les pc clients, les temps de réponses sont bien plus performants.
  • Les procédures stockées sont précompilées. Cela signifie que les requêtes ne doivent plus être ni parsées ni interprétées. Ce qui augmente fortement les performances.
Date de publication : 26 janvier 2003
Dernière modification : 26 janvier 2003
Rubriques : Bases de données
Mots-clés : base de données, procédures stockées, stored procedures