Le trigger est un moyen de prendre en compte dans le SGBDR, des contraintes sémantiques complexes que la clause CHECK ne permet pas de déclarer.
|
|
- César Monette
- il y a 6 ans
- Total affichages :
Transcription
1 Chapitre Interfaces de Programmation 1. TRIGGER 1.1. Définition du trigger = reflexe = déclencheur C est une procédure cataloguée dans la base de données, dont l exécution est déclenchée par l occurrence de l événement associé au trigger. Cet événement survient à la suite de conditions particulières : - opération de mise à jour d une table, d un tuple - passage à vrai d une condition sur une ou plusieurs valeurs de données - combinaison d une occurrence d opération de mise à jour et d une condition sur valeur de données Le trigger est un moyen de prendre en compte dans le SGBDR, des contraintes sémantiques complexes que la clause CHECK ne permet pas de déclarer Création de triggers dans la norme SQL (normalisation prévue dans SQL3) CREATE TRIGGER trigger_name AFTER BEFORE INSERT UPDATE DELETE [ OR INSERT UPDATE DELETE ] ON relation_name WHEN condition Action-procedure [FOR EACH ROW STATEMENT ] Exemple de création d un trigger, sous Oracle, qui ajoute un tuple dans la table commande_en_attente, quand la quantité en stock d un article devient inférieure à la quantité minimale spécifiée pour cet article : CREATE TRIGGER tg_reapprovision AFTER UPDATE ON article FOR EACH ROW WHEN article.qte_stock < article.qte_min DECLARE x number SELECT count(*) INTO x FROM commande_en_attente C WHERE C.num_art = article.num_art ; IF (x = 0) THEN INSERT INTO commande_en_attente VALUES(article.num_art, article.qte_reapprov, SysDate); ENDIF; 1.3. Création de triggers dans Postgresql CREATE TRIGGER trigger_name AFTER BEFORE INSERT UPDATE DELETE [ OR INSERT UPDATE DELETE ] ON relation_name [FOR EACH ROW STATEMENT ] EXECUTE PROCEDURE function(); où trigger_name = nom du trigger ; relation_name = nom de la relation à laquelle s applique l événement function = fonction de trigger sous la forme d une procédure stockée, exécutée quand survient l évènement 1/6
2 Note1 : PostgreSql ne permet pas l exécution d un trigger sur occurrence d une condition mais uniquement AVANT ou APRES une commande (ou instruction = statement) de type Insert, Update ou Delete. Note2 : La fonction de trigger doit être créée avant le trigger. Elle doit être définie comme une fonction sans arguments retournant le type TRIGGER. Note3 : La fonction peut être exécutée pour chacun des tuples concernés par la commande (For each row) ou une seule fois pour la commande (For each statement). Pour l instant PostgreSql n implémente le trigger qu au niveau tuple (For each row). Note4 : Pour l instant, PostgreSql ne permet pas d ouvrir et de fermer une transaction dans une procédure stockée. Les ordres TRANSACTION et END TRANSACTION doivent être spécifiés avant et après l appel de la procédure stockée. Un exemple de trigger sous PostgreSql : Dans le schéma relationnel d une école de conduite, lors d un changement de véhicule pour un élève, on souhaite conserver dans une table archive trace de ce véhicule et du véhicule qui le remplace. Eleve(numel, nomel, preel, adrel, cpel, fixel, mobel, immat#) Arch_eleve (numel, immat, datchange, immat_de_rempl) La fonction à créer pour le trigger est la suivante : CREATE FUNCTION archive_eleve () RETURNS TRIGGER AS ' IF NEW.immat!= OLD.immat THEN INSERT INTO arch_eleve Values (OLD.numel, OLD.immat, today,new.immat); END IF; RETURN NEW; ' LANGUAGE 'plpgsql'; Le trigger à créer est le suivant : CREATE TRIGGER trg_ach_elev BEFORE UPDATE ON eleve FOR EACH ROW EXECUTE PROCEDURE archive_eleve () ; 1.4. Exécution des triggers Le code de la procédure stockée du trigger est automatiquement exécuté par le SGBDR au moment et selon la condition spécifiés dans l'ordre de création du trigger : - avant la finalisation de l'opération si "BEFORE UPDATE DELETE INSERT" - après la finalisation de l'opération si "AFTER UPDATE DELETE INSERT" - avant la finalisation de l'opération si "BEFORE UPDATE DELETE INSERT" et sur occurrence de la condition spécifiée - après la finalisation de l'opération si "AFTER UPDATE DELETE INSERT" et sur occurrence de la condition spécifiée Exemple du trigger Oracle ci-dessus sachant que la quantité minimum requise pour l'article concerné est de 50, la commande suivante Update article set qte_stock = qte_stock where num_art = 12030; ne déclenchera pas l'exécution de la séquence de code du trigger alors que, avec un stock avant update de 100, la commande suivante Update article set qte_stock = qte_stock - 70 where num_art = 12030; déclenchera l'exécution de la séquence de code du trigger Exemple du trigger Postgresql ci-dessus les commandes suivantes 2/6
3 Insert into Eleve values(12030,'tartan','pierre','5 rue des As','97110',' ',' ','123WWW971'); Delete from Eleve where numel = 11111; ne déclencheront pas l'exécution de la fonction de trigger alors que, les commandes suivantes Update Eleve set cpel = '97139' where numel = 12030; Update Eleve set immat = '97ZZZ971' where numel = 12030; déclencheront l'exécution de la fonction de trigger 2. Langage procédural PL/SQL Le langage PL/SQL est un langage procédural comportant des instructions structurées (condition, boucles) en plus des instructions SQL. Disponible dans tous les SGBDR, il prend le nom de PL/pgSQL sous PostgreSql (PL/SQL sous Oracle). Un programme en PL/pgSQL est organisé en blocs de code créés dans la base par un ordre CREATE FUNCTION. Chaque bloc peut contenir une infinité de sous-blocs. Chaque sous-bloc doit respecter la structure de bloc, i.e. commencer par DECLARE (optionnel), suivi de, et se terminer après les instructions par un END. CREATE FUNCTION identifier (arguments) RETURNS type AS ' DECLARE declaration; [...] statement; [...] ' LANGUAGE 'plpgsql'; Commentaires PL/PGSQL Ligne simple de commentaires : -- ceci est un commentaire Bloc de commentaires : /* ceci est un bloc de commentaires */ Arguments des fonctions PL/pgSQL La liste d arguments spécifie uniquement le type de chaque argument. Chaque argument est affecté d un identifiant de la forme $i où i est le numéro de l argument ($1 pour le 1 er, $2 pour le second, etc) Une variable peut être associé à un argument en utilisant ALIAS FOR dans la partie déclarative de la fonction : Identifiant_de_variable ALIAS FOR $i Variables PL/PGSQL Les variables doivent toutes être déclarées dans le sous-bloc DECLARE. nom_de variable [CONSTANT] type_de_donnée [NOT NULL] [ [DEFAULT] := value ] ; 3/6
4 Exemples : Paiement char := O ; Nb_comm integer ; C_number CONSTANT integer := 100 ; Les variables non initialisées reçoivent la valeur NULL par défaut Les types simples sont les types standards SQL : boolean, text, char, varchar, time Ces types sont complétés par le type Record. integer, float, date, Variables PL/PGSQL prédéfinies FOUND : variable booléenne affectée par un Select into, peut être immédiatement testée après cette commande pour savoir si le select a retourné un résultat Variables PL/PGSQL prédéfinies spécifiques aux fonctions de TRIGGERS Nom Type Description NEW Record Nouveau tuple créé après un ordre Insert ou Update OLD Record Ancien tuple laissé par un ordre Delete ou Update TG_NAME Name Nom du trigger déclenché TG_WHEN Text BEFORE ou AFTER selon la spécification du trigger TG_LEVEL Text ROW ou STATEMENT selon la spécification du trigger TG_OP Text INSERT ou UPDATE ou DELETE selon l opération qui a déclenché le trigger TG_RELID Oid Identification (ID) de l objet (relation) auquel est associé le trigger TG_RELNAME Name Nom de la relation à laquelle est associé le trigger Variables attribut Une variable est déclarée avec attribut quand elle destinée à contenir les valeurs d un objet de la base ; il n est pas nécessaire de connaître le type de cet objet, le type de la variable y sera automatiquement adapté. Les attributs sont au nombre de 2 : - attribut %TYPE. La déclaration est la suivante : nom_de_variable nom_de_table. nom_de_colonne%type permet de définir une variable correspondant à un attribut d une relation - attribut %ROWTYPE. La déclaration est la suivante : nom_de_variable nom_de_table%rowtype permet de définir une variable correspondant à un tuple d une relation Exemples : Un_client Client%ROWTYPE ; Nom_client Client.nomcl% TYPE; Instructions PL/PGSQL Affectation Variable := expression Où expression = constante variable expression arithmétique(variable, constante) expression logique(variable, constante) Select into Variable Attribut from relation [ where..] ; la variable reçoit la valeur de l attribut projeté Select into V1, V2,,Vn A1,A2,,An from relation [ where..] ; les variables V1,V2,,Vn reçoivent les valeurs des attributs projetés A1,A2,,An 4/6
5 NOTE : En PL/pgSQL, pour avoir l équivalent de la commande SQL Select into qui crée une nouvelle table, utiliser Create table as select Return Return {variable expression(variable, constante) } Instruction qui retourne une valeur du type spécifié dans la déclaration de la fonction Une instruction Return doit toujours être incluse avant le END de la fonction (même si elle n est jamais exécutée) IF THEN IF condition THEN instruction; [...] END IF; IF THEN ELSE IF condition THEN instruction; [...] ELSE instruction; [...] END IF; Imbrications de IF THEN ELSE Boucle inconditionnelle LOOP instruction [...] EXIT [étiquette] [WHEN condition ] END LOOP; Cette instruction boucle jusqu à rencontrer l instruction EXIT. Cette dernière peut être conditionnée par WHEN qui précise quand la sortie de boucle doit s effectuer. Boucle WHILE WHILE condition LOOP instruction [...] END LOOP; Similaire à la boucle while dans les langages de programmation standard (Pascal, C,.) Boucle FOR FOR identifiant IN expression1.. expression2 LOOP instruction [...] END LOOP; identifiant est une variable de type entier créée automatiquement en début de boucle puis ou détruite à la fin. Il n est pas nécessaire de la déclarer explicitement (sous DECLARE). expression1 et expression2 sont des expressions entières. FOR variable IN instruction_select LOOP instruction [...] END LOOP; variable est une variable déclarée de type RECORD ou avec l attribut ROWTYPE Un exemple de fonction : Dans la base de données d une école de conduite, on crée une fonction qui pour un numéro d élève donné retourne une chaîne de caractère concaténant le nom et le prénom de l élève modélisé par la relation : Eleve(numel, nomel, preel, adrel, cpel, fixel, mobel, immat#) La fonction est la suivante : CREATE FUNCTION ident_eleve (int4) RETURNS varchar(100) AS ' DECLARE Num_elev ALIAS FOR $1; Nom_elev eleve.nomel%type; Pren_elev eleve.preel%type; Ident varchar(100); SELECT INTO Nom_elev, Pren_elev Nomel, preel FROM eleve WHERE numel = Num_elev; IF FOUND THEN Ident := Nom_elev Pren_elev; 5/6
6 ELSE Ident := Numero Eleve INEXISTANT END IF; RETURN Ident; ' LANGUAGE 'plpgsql'; Utilisation de PL/PGSQL dans une base de données Définir le langage PL/pgSQL comme objet de la base de données Pour pouvoir être utilisé dans une base de données, le langage PL/PGSQL doit préalablement être défini par l administrateur de la base comme un objet de la base de données. Deux méthodes pour cela : 1) sous psql, avec des ordres SQL : - d'abord créer dans la base le gestionnaire des appels procéduraux (procedural call Handler) Create Function plpgsql_call_handler () Returns OPAQUE As /var/lib/pgsql/plpgsql.so Language C ; où /var/lib/pgsql est le chemin du répertoire contenant la bibliothèque de PostgreSql ; dans certaines configuration il s agit du répertoire /usr/ /lib/pgsql - ensuite créer l objet language Create Language plpgsql Handler plpgsql_call_handler Lancompiler PL/Pgsql ; 2) sur la ligne de commande système, avec l utilitaire : createlang plpgsql nom_base_de_données Créer une fonction stockée : Par la commande Create Function (Cf. ci-dessus) Appel d une fonction stockée : Select nom_de_fonction (arguments) ; ou nom_de_variable := nom_de_fonction (arguments) ou PERFORM nom_de_fonction (arguments) 6/6
Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
Plus en détailLes Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.
Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger
Plus en détailBases de données avancées
Bases de données avancées Jean-Yves Antoine LI - Université François Rabelais de Tours Jean-Yves.Antoine@univ-tours.fr UFR Sciences et Techniques IUP SIR Blois Master 1 Bases de Données avancées IUP Blois,
Plus en détailLe langage procédural PL-PGSQL
Le langage procédural PL-PGSQL PL/pgSQL est un langage procédural utilisé dans le système de gestion de bases de données PostgreSQL. Objectifs : créer des fonctions standards et triggers, ajouter des structures
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions
Plus en détailPL langage de programmation côté serveur. SQL à la base : types, expressions, requêtes
Introduction à PL langage de programmation côté serveur installation nécessaire : CREATE LANGUAGE ou createlang interprété : erreurs de syntaxe possibles à l exécution SQL à la base : types, expressions,
Plus en détailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
Plus en détailLaboratoires de bases de données. Laboratoire n 6. Programmation SQL. par Danièle BAYERS et Louis SWINNEN
Département Informatique Laboratoires de bases de données Laboratoire n 6 Programmation SQL par Danièle BAYERS et Louis SWINNEN Ce document est disponible sous licence Creative Commons indiquant qu il
Plus en détailIntégrité sémantique dans les bases de données relationnelles
Intégrité sémantique dans les bases de données relationnelles 1 - Intégrité sémantique Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU Ecole Polytechnique Universitaire de Marseille Fev. 2013
Plus en détailBases de Données relationnelles et leurs systèmes de Gestion
III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détailBASES DE DONNEES TP POSTGRESQL
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout
Plus en détailBases de Données Avancées PL/SQL
1/170 Bases de Données Avancées Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017
Plus en détailDevoir Data WareHouse
Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE
Plus en détailBases de données relationnelles
Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses
Plus en détailIntroduction au PL/SQL Oracle. Alexandre Meslé
Introduction au PLSQL Oracle Alexandre Meslé 17 octobre 2011 Table des matières 1 Notes de cours 3 1.1 Introduction au PLSQL............................................ 3 1.1.1 PLSQL.................................................
Plus en détailCorrigés détaillés des exercices
Corrigés détaillés des exercices Diagramme des tables objet La figure suivante vous aidera dans la compréhension des manipulations des objets de la base. Client_type Client num nom adresse {telephone_vry}
Plus en détail1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Plus en détailLes bases de données
Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailIntégrité des données
. Contraintes d intégrité : Définition et objectif Intégrité des données Définition des contraintes Vérification des contraintes Contrainte d'intégrité : propriété sémantique que doivent respecter les
Plus en détailGestion des transactions et accès concurrents dans les bases de données relationnelles
Gestion des transactions et accès concurrents dans les bases de données relationnelles Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU) Ecole Polytechnique Universitaire de Marseille Fev.
Plus en détailBases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications
Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications P.-A. Sunier, HEG-Arc Neuchâtel avec le concours de J. Greub pierre-andre.sunier@he-arc.ch http://lgl.isnetne.ch/
Plus en détailISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL
ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé
Plus en détailLangage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes
Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
Plus en détailCours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry
Cours 3 Développement d une application BD 1 Plan du cours Gestion de la sécurité des données Optimisation des schémas de bases via la dénormalisation Utilisation de vues Placement du code applicatif dans
Plus en détailOracle Le langage procédural PL/SQL
Oracle Le langage procédural PL/SQL Denis Roegel roegel@loria.fr IUT Nancy 2 1998/1999 Sommaire 1 Introduction 3 2 Création de packages 3 2.1 Procédures groupées.........................................
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
Plus en détailAdministration des bases de données. Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/
Administration des bases de données Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ Administration des bases de données II Objets avancés dans les bases de données OBJECTIFS 2.1. NOTIONS 2.1.1.
Plus en détailPartie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle
Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Ce projet comporte trois parties sur les thèmes suivants : création de base de donnée, requêtes SQL, mise en œuvre
Plus en détailA.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW
A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW Groupe : 322 Exploitation des Banques de données 420-PK6-SL (1-2-1) Étape : 3 Professeur Nom: Marcel Aubin Courriel : maubin@cegep-st-laurent.qc.ca
Plus en détailI4 : Bases de Données
I4 : Bases de Données Passage de UML au modèle relationnel Georges LOUIS Département Réseaux et Télécommunications Université de La Rochelle Module I4 2008-2009 1 G.Louis Sommaire 1 Des classes aux tables
Plus en détailLe langage SQL pour Oracle - partie 1 : SQL comme LDD
Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger
Plus en détailGestion de base de données
Université Libre de Bruxelles Faculté de Philosophie et Lettres Département des Sciences de l Information et de la Communication Gestion de base de données Projet : Take Off ASBL Cours de M. A. Clève STIC-B-505
Plus en détailECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;
RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines
Plus en détailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailTable des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction
PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés
Plus en détailModernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014. Volubis.fr
Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes Volubis.fr Conseil et formation sur OS/400,
Plus en détailPROJET 1 : BASE DE DONNÉES REPARTIES
PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties
Plus en détail1. Base de données SQLite
Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis
Plus en détail//////////////////////////////////////////////////////////////////// Administration bases de données
////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données
Plus en détailTP3 : Creation de tables 1 seance
Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer
Plus en détailHistorisation des données
Historisation des données Partie 1 : mode colonne par Frédéric Brouard, alias SQLpro MVP SQL Server Expert langage SQL, SGBDR, modélisation de données Auteur de : SQLpro http://sqlpro.developpez.com/ "SQL",
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours 12 : Concurrence d accès Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Accès concurrents Définitions Verrous Collisions Niveaux de cohérence Blocage
Plus en détailIntroduction au Système de Gestion de Base de Données et aux Base de Données
Introduction au Système de Gestion de Base de Données et aux Base de Données Formation «Gestion des données scientifiques : stockage et consultation en utilisant des bases de données» 24 au 27 /06/08 Dernière
Plus en détailI. MySQL : Serveur et SGBD
Le Système de Gestion de Base de Données MySQL I. MySQL : Serveur et SGBD Menu I. MySQL : Serveur et SGBG II. Création d'une base de données avec MySQL MySQL est un système de gestion et conception de
Plus en détailTD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009
TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 Loïc Maisonnasse 1 Objectif Ce TD a pour objectif de vous familiariser avec le langage de requêtes SQL. Et de vous apprendre à écrire des requêtes SQL pour
Plus en détailAuto-évaluation Oracle: cours de base
Auto-évaluation Oracle: cours de base Document: F0475Test.fm 14/01/2008 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION ORACLE: COURS DE
Plus en détailBases de données et sites WEB Licence d informatique LI345
Bases de données et sites WEB Licence d informatique LI345 Anne Doucet Anne.Doucet@lip6.fr http://www-bd.lip6.fr/ens/li345-2013/index.php/lescours 1 Contenu Transactions en pratique Modèle relationnel-objet
Plus en détailLe Langage De Description De Données(LDD)
Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,
Plus en détailSQL Historique 1982 1986 1992
SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailCATALOGUE FORMATIONS 2015. DOMAINE Bases de données
DOMAINE Bases de données Version 1.0 - Octobre 2014 1, 2, 3 juin 2015 1, 2, 3 octobre 2015 CATALOGUE Analyse et conception d une base de données Elaboration de fiches de collecte de données Techniques
Plus en détailProcédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12
Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures
Plus en détailComprendre les bases de données
Comprendre les bases de données Auteur : Hervé LEFEBVRE 9 mars 2002 Version compilée des articles parus sur , ce document reprends l introduction à Postgresql
Plus en détailLe langage SQL (première partie) c Olivier Caron
Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)
Plus en détail1 Position du problème
Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo
Plus en détailCompétences Business Objects - 2014
Compétences Business Objects - 2014 «Mars-Juin 2014. Réf : Version 1 Page 1 sur 34 Sommaire CONTEXTE DE LA REMISE A NIVEAU EN AUTOFORMATION... 3 1. MODELISATION... 4 1.1 DESCRIPTION FONCTIONNEL DE L'APPLICATION
Plus en détailPratique et administration des systèmes
Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailDjango et PostgreSQL sous la charge
Django et PostgreSQL sous la charge Rodolphe Quiédeville Pourquoi couper la queue du poulet? RMLL - Beauvais 8 juillet 2015 Rodolphe Quiédeville (PeopleDoc) Django et PostgreSQL sous la charge 8 juillet
Plus en détailMysql avec EasyPhp. 1 er mars 2006
Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe
Plus en détailJava DataBaseConnectivity
Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailPaginer les données côté serveur, mettre en cache côté client
Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule
Plus en détailBases de données et sites WEB
Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailLes BASES de DONNEES dans WampServer
Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui
Plus en détailAdministration des bases de données
Administration des bases de données Mehdi Louizi 1 Pourquoi PL/SQL 2 Pourquoi PL/SQL? PL/SQL = PROCEDURAL LANGUAGE/SQL SQL est un langage non procédural Les traitements complexes sont parfois difficiles
Plus en détailCours Informatique Master STEP
Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions
Plus en détailPlan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions
Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]
Plus en détailCours SQL. Base du langage SQL et des bases de données
Cours SQL Base du langage SQL et des bases de données Auteur Tony Archambeau Site web http://sql.sh Date 24 mai 2014 Licence Mis à disposition selon les termes de la licence Creative Commons Attribution
Plus en détailPlan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD
Plan Bases de Données L3 Info Céline Rouveirol 2010-2011 Bases de Données 1 / 77 Sources des transparents Bases de Données 2 / 77 Bases de SQL - M.P. Dorville/F. Goasdoué, LRI, Université Paris Sud - V.
Plus en détailHala Skaf-Molli. Nancy-Université skaf@loria.fr 14 mai 2007
Bases de données avancées Hala Skaf-Molli Maître de Conférence Nancy-Université skaf@loria.fr 14 mai 2007 1 Introduction Dans ce cours, nous allons étudier les bases de données Orienté objets, bases de
Plus en détailOra2Pg Performances. (C) 2013 Gilles Darold
Ora2Pg Performances (C) 2013 Gilles Darold Gilles Darold Consultant @ Dalibo Auteur d'ora2pg Auteur de PgBadger Auteur de pgformatter Et autres => http://www.darold.net/ Cas pratique Migration d'une base
Plus en détailApplication BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :
ntroduction 1/28 2/28 Anne-Cécile Caron Licence MAGE - Bases de Données 2013-2014 Application base de données Pour le développeur : Quel est l environnement? type de client (mode client serveur, intranet,...)
Plus en détailModélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework
Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé
Plus en détailBTS S.I.O. 2012-2013 PHP OBJET. Module SLAM4. Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais
BTS S.I.O. 2012-2013 PHP OBJET Module SLAM4 Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais Table des matières 1 But... 3 2 Les bases :... 3 3 Utilisation d'une classe : Instanciation...3
Plus en détailChapitre 5 : Les procédures stockées PL/SQL
I. Introduction Une procédure ou une fonction stockée est un bloc PL/SQL nommé pouvant accepter des paramètres et être appelée. Généralement, on utilise une fonction pour calculer une valeur. Les procédures
Plus en détailBTS/CGO P10 SYSTEME INFORMATION Année 2012-2013
BTS/CGO P10 SYSTEME INFORMATION Année 2012-2013 TS2 CGO 7 mars 2013 2 heures Aucun document autorisé Calculatrice autorisée Nota : Il vous est demandé d apporter un soin particulier à la présentation de
Plus en détailAlgorithmique & programmation
Algorithmique & programmation Type structuré Article, Enregistrement, Structure Définition de nouveaux types!! On a vu les types simples "! entier, booléen, caractère, chaîne de caractères!! Comment gérer
Plus en détailProgrammation d application Bases de données avec Java
Plan du document Programmation d application Bases de données avec Java INT Problématique slide 3 Correspondance diagramme de classe slide 4 UML vers schéma relationnel Programmation BD avec JDBC slide
Plus en détailINTEGRITE ET BD ACTIVES
INTEGRITE ET BD ACTIVES 1. INTRODUCTION Un SGBD doit garantir la cohérence des données lors des mises à jour de la base. En effet, les données d'une base ne sont pas indépendantes, mais obéissent à des
Plus en détailPrésentation Windows Azure Hadoop Big Data - BI
Présentation Windows Azure Hadoop Big Data - BI Sommaire 1. Architecture Hadoop dans Windows Azure... 3 2. Requête Hive avec Hadoop dans Windows Azure... 4 3. Cas d études... 5 3.1 Vue : Administrateur...
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailRéplication logique avec PostgreSQL 9.4
Réplication logique avec PostgreSQL 9.4 Table des matières Réplication logique...3 1 Licence des slides...3 2 Auteur...4 3 Historique...4 3.1 Avant PostgreSQL 9.4...4 4 Nouveautés de la 9.4...5 5 "Réplication"
Plus en détail