Oracle bd

PL/ SQL AVEC SQL*PLUS
REGLES EST SYNTAXES

Qu’est ce que PL / SQL ?

PL/SQL (PROCEDURAL LANGUAGE/ SQL) est une extension au langage SQL avec des concepts de langage de programmation. L’interrogation et la manipulation des données sont inclues dans le code procédural.

Structure d’un block PL/SQL

Un block PL/SQL peut contenir jusqu’à 3 sections :

[DECLARE]
-variables, constantes, curseurs, exceptions utilisateurs
BEGIN
– Ordres SQL
– Instruction de contrôle PL/SQL
[EXCEPTION]
– traitement à effectuer en cas d’erreurs
END ;
/

Quelques règles à respecter :
Chaque instruction ainsi que le mot clé END se termine par un « ; », sauf les noms des entêtes de sections DECLARE , BEGIN etEXCEPTION
Seuls les mots clé : BEGIN et END sont obligatoires

Les chaînes de caractères et les dates doivent êtres délimitées avec de simples quotes

Les commentaires sur plusieurs lignes sont délimités par /* et */

Les commentaires sur une seule lignes sont préfixés de deux tirets (–)

Utilisation de variables

Contrairement au langage SQL , le langage PL/SQL permet de définir et de gérerdes variables

Déclarez des variables dans la section DECLARE

Assignez de nouvelles valeurs aux variables dans la section exécutable (BEGIN)

Passez des valeurs dans un bloc PL/SQL par l’intermédiaire de paramètres provenant de l’environnement appelant

Notez qu’il n’est pas possible d’afficher le contenu d’une variable à partir d’un bloc PL/SQL , ainsi pour vérifier les résultats voustransmettrez ceux ci dans des variables de l’environnement hôte pour pouvoir les afficher une fois sorti du bloc PL/SQL

Syntaxe de déclaration de variables et constantes

identifiant [constant] type [NOT NULL] [ := / DEFAULT expr ] ;

REGLES :
Le nom d’un identifiant adopte les mêmes règles que celui d’un objet SQL
La valeur par défaut est facultative pour les variables, sauf dans le cas d’une variable NOT NULL
Une variable peut être initialisée avec une expression à l’aide de l’opérateur ( :=) ou avec le mot clé DEFAULT, dans les autres cas , la variable est initialisée à NULL

TYPES DE DONNEES :

|BINARY_INTEGER |Les entiers compris entre –2147483647 et +2147483647 |
|NUMBER(M,P)|Numérique avec parties entière , parties décimales |
|CHAR(L) |Données de types caractères , L est la taille maximum de |
| |la chaîne , par défaut , elle égale à 1 |
|LONG |Données de caractères de longueur variable jusqu’à 32267 |
||octets |
|VARCHAR2(L) |Données de caractères de longueur variable jusqu’à 32267 |
| |octets |
|DATE |Pour les dates et les heures ||BOOLEAN |Données de type logique |
| |(TRUE, FALSE, NULL) |

L’ATTRIBUT %TYPE
Pou déclarer une variable de même type que celui d’une colonne de table il suffit de mettre l’attribut %TYPE préfixé du nom de la colonne qui lui aussi estpréfixé du nom de la table

DECLARE

variable .%TYPE ;

BEGIN

TYPES DE DONNEES COMPOSITES

TYPE DE DONNEES TABLES PL/SQL

Il s’agit de tableau à un dimension, avec une clé primaire de type BINARY_INTGER et une colonne de type scalaire qui stocke les éléments du tableau

Déclaration d’un tableau PL/SQL
TYPE…