sql procedural Université M ? Hamed Bougara Boumerdès Faculté des Sciences Département Informatique Cours Master Bases de Données Avancées Responsable A AIT BOUZIAD SQL PROCEDURAL Dans les di ?érentes parties de ce chapitre on utilisera la base de données

Université M ? Hamed Bougara Boumerdès Faculté des Sciences Département Informatique Cours Master Bases de Données Avancées Responsable A AIT BOUZIAD SQL PROCEDURAL Dans les di ?érentes parties de ce chapitre on utilisera la base de données suivante CPartie Bases du langage de programmation Introduction - La norme SQL n ? intègre pas Les structures de contrôle habituelles d ? un langage IF WHILE ? - Elles apparaissent dans une sous-partie optionnelle de la norme ISO IEC - Flow-control statements - Le langage procédural de MySQL est une extension de SQL permettant de faire cohabiter les structures de contrôle avec des instructions SQL Généralités Structure d ? un bloc d ? instruction Pour exécuter un bloc il faut l ? inclure dans une procédure cataloguée Portée des objets Un objet variable curseur ou exception déclaré dans un bloc est accessible dans les sous-blocs - Un objet déclaré dans un sous-bloc n ? est pas visible du bloc supérieur Casse et lisibilité - Mysql procédural est non case sensitive ? numBrevet et NumBREVET désignent le même identi ?cateur - Lisibilité du code Identi ?cateurs - Permet de nommer un objet utilisé dans un bloc Commence par une lettre ou un chi ?re - N ? est pas limité en nombre de caractères Exemple Commentaires - Monolignes commençant avec le symbole -- ? et ?nissant à la ?n de la ligne - multilignes commençant par ? et ?nissant par ? C Variables Les variables qui sont déclarées et éventuellement initialisées par la directive DECLARE - Deux types de variables sont disponibles sous MySQL o scalaires recevant une seule valeur d ? un type SQL ex colonne d ? une table o externes dé ?nies dans la session Variables scalaires - Syntaxe o? DEFAULT permet d ? initialiser la ou les variable s Le tableau suivant décrit quelques exemples A ?ectations Il existe plusieurs possibilités pour a ?ecter une valeur à une variable - l ? a ?ectation comme on la conna? t dans les langages de programmation SET variable expression - la directive DEFAULT voir plus haut - la directive INTO d ? une requête SELECT ? INTO variable FROM ? Restrictions Résolution de noms Dans des instructions SQL le nom de la variable est prioritairement interprété au détriment de la colonne de la table de même nom Exemple Ici l ? instruction DELETE supprime tous les pilotes de la table et non pas seulement le pilote de nom 'Bougara' car MySQL considère les deux identi ?cateurs comme étant la même variable DECLARE DELETE nom VARCHAR FROM Pilote WHERE ? ? ? ? ? DEFAULT 'Bougara' nom nom Solutions o nommer toutes les variables di ?éremment des colonnes utiliser un pré ?xe par exemple o utiliser une étiquette de bloc CExemple Opérateurs - Les opérateurs SQL étudiés au chapitre ? Rappel SQL ? logiques arithmétiques de concaténation ? sont disponibles au sein d ? un sous-programme - Les règles de priorité sont les mêmes que dans le cas de SQL - L

  • 28
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise
Partager