Etudiant
Université de Nice Sophia-Antipolis
Version 0.6.3 – 3/12/06
Avertissement : cette partie du cours n’est qu’un survol du langage PL/SQL, utile pour écrire des procédures stockées simples Elle laisse de côté de nombreuses fonctionnalités du langage
Richard Grin
R. Grin
PL/SQL
page 2
Pourquoi PL/SQL ?
SQL est un langage non procédural Les traitements complexes sont parfois difficiles à écrire si on ne peut utiliser des variables et les structures de programmation comme les boucles et les alternatives On ressent vite le besoin d’un langage procédural pour lier plusieurs requêtes SQL avec des variables et dans les structures de programmation habituelles page 3 R. Grin PL/SQL page 4
Introduction
R. Grin
PL/SQL
Principales caractéristiques de PL/SQL
Extension de SQL : des requêtes SQL cohabitent avec les structures de contrôle habituelles de la programmation structurée (blocs, alternatives, boucles) La syntaxe ressemble au langage Ada Un programme est constitué de procédures et de fonctions Des variables permettent l’échange d’information entre les requêtes SQL et le reste du programme
R. Grin PL/SQL page 5
Utilisation de PL/SQL
PL/SQL peut être utilisé pour l’écriture des procédures stockées et des triggers (Oracle accepte aussi le langage Java) Il convient aussi pour écrire des fonctions utilisateurs qui peuvent être utilisées dans les requêtes SQL (en plus des fonctions prédéfinies) Il est aussi utilisé dans des outils Oracle, Forms et Report en particulier
R. Grin PL/SQL page 6
1
Normalisation du langage
PL/SQL est un langage propriétaire de Oracle PostgreSQL utilise un langage très proche Ressemble au langage normalisé PSM (Persistant Stored Modules) Tous les langages L4G des différents SGBDs se ressemblent
Structure d’un programme
R. Grin
PL/SQL
page 7
R. Grin
PL/SQL
page 8
Blocs
Un programme est structuré en blocs d’instructions de 3 types : n procédures anonymes n procédures nommées n