PL/SQL

PL/SQL

PL/SQL (sigle de Procedural Language / Structured Query Language) est un langage procédural propriétaire créé par Oracle et utilisé dans le cadre de bases de données relationnelles. Il a été influencé par le langage Ada.

Il permet de combiner des requêtes SQL et des instructions procédurales (boucles, conditions...), dans le but de créer des traitements complexes destinés à être stockés sur le serveur de base de données (objets serveur), comme par exemple des procédures stockées ou des déclencheurs.

Les dernières évolutions proposées par Oracle reposent sur un moteur permettant de créer et gérer des objets contenant des méthodes et des propriétés.

PostgreSQL propose un langage procédural proche du PL/SQL, le PL/pgSQL.

Sommaire

Concepts

Blocs

Tout programme PL/SQL doit se présenter sous forme de blocs. Voici la forme générale d'un bloc.

DECLARE
déclarations
BEGIN
implémentation
EXCEPTION
gestion des exceptions
END;

Un bloc PL/SQL comprend d'abord une partie dédiée à la définition de toutes les variables employées dans le bloc. Elle commence par l'instruction DECLARE et est facultative. La section principale commence avec l'instruction BEGIN. Elle contient les instructions du programme. Si une variable est utilisée dans cette section alors qu'elle n'a pas été déclarée dans la section de déclaration, le compilateur générera une erreur. Enfin, la dernière section est appelée en cas d'erreur dans la section précédente. Elle commence par l'instruction EXCEPTION et on y traite l'ensemble des exceptions levées dans la section principale.

Structure du code

PL/SQL permet de grouper les instructions dans des procédures et des fonctions, ces termes ont la même signification qu'en Pascal: une fonction est un bloc de code prenant des paramètres et qui effectue des traitements pour obtenir un résultat retourné, une procédure recouvre la même notion sauf qu'une procédure ne retourne pas de résultat. Les arguments passés aux procédures et fonctions peuvent lui être donnés en lecture seule (IN), en écriture (OUT) ou en lecture-écriture (IN OUT); le développeur peut également choisir le passage par valeur (comportement normal) ou par référence (NO COPY).

Des fonctions et procédures peuvent être regroupées dans des unités nommées paquetages, elles sont alors accessibles sous le même espace de noms. D'une manière similaire aux modules de Pascal, la création d'un paquetage requiert l'écriture d'une spécification exposant le prototype des fonctions et procédures du paquetage, ainsi que des variables et types publics. En second lieu, l'implémentation du paquetage est faite séparément; elle contient le code des procédures et fonctions ainsi que la déclaration d'éléments privés.

Variables

Les premiers types de variables à disposition sont les types SQL supportés par le serveur Oracle (INTEGER, VARCHAR, ...), mais il est possible de définir des types personnalisés.

Voir aussi

Articles connexes

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article PL/SQL de Wikipédia en français (auteurs)

Игры ⚽ Поможем сделать НИР

Regardez d'autres dictionnaires:

  • SQL — ist eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken. SQL ist von ANSI und ISO standardisiert und wird von fast allen gängigen Datenbanksystemen unterstützt. Die Bezeichnung SQL (offizielle… …   Deutsch Wikipedia

  • SQL-92 — SQL (das Kürzel für Structured Query Language; offizielle Aussprache [ɛskjuːˈɛl], häufig auch [ˈsiːkwəl] →SEQUEL), ist eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken. SQL ist von ANSI und ISO… …   Deutsch Wikipedia

  • SQL-99 — SQL (das Kürzel für Structured Query Language; offizielle Aussprache [ɛskjuːˈɛl], häufig auch [ˈsiːkwəl] →SEQUEL), ist eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken. SQL ist von ANSI und ISO… …   Deutsch Wikipedia

  • SQL — Класс языка: Мультипарадигмальный Появился в: 1974 Автор(ы): Дональд Чэмбэрлин Рэймонд Бойс Релиз: SQL:2008 (2008) Типизация данных …   Википедия

  • SQL — Desarrollador(es) IBM ISO/IEC 9075 1:2008 Información general Paradigma Multiparadigma …   Wikipedia Español

  • SQL-Injection — (dt. SQL Einschleusung) bezeichnet das Ausnutzen einer Sicherheitslücke in Zusammenhang mit SQL Datenbanken, die durch mangelnde Maskierung oder Überprüfung von Metazeichen in Benutzereingaben entsteht. Der Angreifer versucht dabei, über die… …   Deutsch Wikipedia

  • SQL Server Compact — Filename extension .sdf Developed by Microsoft Type of format Relational database Microsoft SQL Server Compact (SQL CE) is a compact relational database produced by Microsoft for applications that run on mobile devices and desktops. Prior to the… …   Wikipedia

  • SQL-Injektion — SQL Injection (dt. SQL Einschleusung) bezeichnet das Ausnutzen einer Sicherheitslücke in Zusammenhang mit SQL Datenbanken, die durch mangelnde Maskierung oder Überprüfung von Metazeichen in Benutzereingaben entsteht. Der Angreifer versucht dabei …   Deutsch Wikipedia

  • SQL Injection — (dt. SQL Einschleusung) bezeichnet das Ausnutzen einer Sicherheitslücke in Zusammenhang mit SQL Datenbanken, die durch mangelnde Maskierung oder Überprüfung von Metazeichen in Benutzereingaben entsteht. Der Angreifer versucht dabei, über die… …   Deutsch Wikipedia

  • SQL Injektion — SQL Injection (dt. SQL Einschleusung) bezeichnet das Ausnutzen einer Sicherheitslücke in Zusammenhang mit SQL Datenbanken, die durch mangelnde Maskierung oder Überprüfung von Metazeichen in Benutzereingaben entsteht. Der Angreifer versucht dabei …   Deutsch Wikipedia

  • SQL-92 — SQL 92  третья версия языка запросов к базам данных SQL. В отличие от стандарта SQL 89, третья версия стала весьма существенным обновлением языка. За исключением некоторых мелких противоречий стандарт SQL 89 практически полностью совместим… …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”