Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

Dimension: px
Commencer à balayer dès la page:

Download "Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry"

Transcription

1 Cours 3 Développement d une application BD 1

2 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 le SGBD via les prodécures stockées 2

3 Sécurisation d une base de données Question : qui fait quoi depuis où via quel moyen technique? 3

4 Sécurisation d une base de données à la périphérie de la base Sécurisation de la base Rôle du DBA : sauvegardes, sécurisation système, Sécurisation de l application donnant accès aux données présentes dans la base Dépend de la technologie : Application Serveurs d application Outils d analyse (BO, ) Sécurisation des données Niveau de criticité des données Sécurisation du stockage Sécurisation de la transmission des données 4

5 Sécurisation d une base de données Application sécurisée Création de rôles et d utilisateur Définition des différentes sortes d actions Définition des droits des différents types d utilisateurs de la base de données Utilisation de vues Restriction et vérification dynamique pour la consultation comme pour la modification des données Utilisation de procédures stockées Contrôle des opérations effectuées Sécurisation des requêtes effectuées sur la base 5

6 Sécurisation d une base de données Architecture utilisateur de l application Découpage des utilisateurs/schéma de données par domaines fonctionnels : UtilStockage sera propriétaire des données relatifs à la gestion du stock, UtilCommercial sera propriétaire des données relatifs aux opérations commerciales UtilTransverse sera propriétaire des données communes à la gestion du stock et aux opérations commerciales Utilisation de la base de donnée comme gestionnaire des utilisateurs finaux de l application (mot de passe, profil, ) 6

7 Utilisateurs Oracle Les objets Oracle (tables, ) sont regroupées dans un ou plusieurs schémas selon une répartition décidée par l analyse. Ce regroupement défini un utilisateur propriétaire de ces objets. Les différents types d interactions (privilèges, ressource, ) sur les Objets Oracle définissent des rôles. Pour interagir avec les Objets Oracle, un utilisateur/une application doit utiliser un utilisateur actif ayant un ou plusieurs rôles. Les utilisateurs actif et les utilisateurs propriétaires ne sont pas forcément identiques. 7

8 Notion de ressource Les utilisateurs ont des droits (quotas) sur des ressources qui leurs sont spécifiques : Tablespaces de données ou d index, TEMP, Il appartiennent à un groupe de ressource : Défini la répartition des ressources (mémoire, CPU) entre les utilisateurs Prévoit la possibilité de basculement automatique d un plan de ressource vers un autre après un temps donné. 8

9 Notion de privilège «Droit d effectuer une opération précise sur un objet précis» Oracle décline cette définition sur l ensemble des types d opérations et l ensemble des types d objets => grand nombre de privilège répartis en deux classes : Système : pouvant affecter l instance ou l ensemble des objets de tous les utilisateurs (100 privilèges) Schéma : limite les privilège à certains objets voir partie d objet, Consistent principalement dans l indication de pouvoir créer, accéder, modifier ou supprimer un objet Oracle. 9

10 La gestion des privilèges dans Oracle Oracle défini des «rôles» comme un ensemble de privilèges acquis. On utilisera/définira les rôles qui conviennent aux différents type de besoins. Oracle prédéfini des rôles, par exemple : Connect : peut se connecter à la base et créer des objets de base, Resource : peut créer plus d objets que connect, DBA : tous les privilèges système avec l option ADMIN Mais aussi : - IMP_FULL_DATABASE, EXP_FULL_DATABASE, 10

11 Vite, un exemple! Une application de gestion de stock défini trois tables CLIENTS, STOCK, PRODUITS et une vue PRODUITS_EN_STOCK. Un utilisateur «GSTOCK» est défini et est propriétaire des tables et de la vue : Il doit pouvoir créer des tables et des vues Les objets seront créées par lui. Un rôle de consultation des données est créé : CREATE ROLE CONSULT_DATA ; Les privilèges correspondant lui sont affectés : GRANT SELECT ON GSTOCK.CLIENT TO CONSULT_DATA; (un grant par objet, mais plusieurs privilèges possible par objet) Un rôle de mise à jours du stock est créé : CREATE ROLE UPDT_STOCK ; Les privilèges correspondant lui sont affectés : GRANT SELECT, UPDATE ON GSTOCK.STOCK TO UPDT_STOCK ; GRANT SELECT ON GSTOCK.CLIENT TO UPDT_STOCK ; GRANT SELECT ON GSTOCK.PRODUITS TO UPDT_STOCK ; GRANT UPDATE(NbIn, NbOut) ON GSTOCK.PRODUITS TO UPDT_STOCK ; Un utilisateur WEBSTOCK de l application Web de Mise à jours du stock est créé, le rôle UPDT_STOCK sera son rôle par défaut : GRANT UPDT_STOCK TO WEBSTOCK ; ALTER USER WEBSTOCK DEFAULT ROLE UPDT_STOCK ; 11

12 récapitulatif Lors de la création d une base de données, les étapes d analyse sont : Vérification du modèle conceptuel Génération des modèles logiques et physiques Définition des utilisateurs Répartition des tables dans les tablespaces et calcul des tailles de stockages nécessaires Ce qui permet : 1. De créer les espaces de stockages 2. De créer les utilisateurs 3. De créer les tables, vues, indexes, appartenant aux utilisateurs 12

13 Plan du cours Gestion de la sécurité des données Utilisation de vues Optimisation des schémas de bases via la dénormalisation Placement du code applicatif dans le SGBD via les prodécures stockées 13

14 Optimisation et sécurisation du schéma : les vues Définition (1/2) Objectif Indépendance logique des applications par rapport à la base Moyen Les vues sont des relations virtuelles dont la définition est stockée dans la meta-base Elles sont interrogées et mises à jour comme des relations normales Problèmes Interrogation efficace Mise à jour au travers de vues 14

15 Les vues : définition (2/2) Vue (View) Base de données virtuelle dont le schéma et le contenu sont dérivés de la base réelle par un ensemble de questions. Une vue est donc un ensemble de relations déduites d'une bases de données, par composition des relations de la base. Par abus de langage, une vue relationnelle est une table virtuelle 15

16 Les vues : optimisation et restrictions Une condition sur une vue peut s avérer mois efficace qu un ensemble de conditions sur la table source de la vue (modification de question / query modification) Pour qu une vue puisse être mise à jour (Updatable View) il faut qu elle contienne suffisamment d informations pour un report des mises à jours sans ambiguïtés : Clés des tables participantes déductibles de la vue Vues mono-table avec clé de la table 16

17 Classification des vues Ensemble de toutes les vues Vues théoriquement mettable à jour Vues multi-tables Mettable à jour en SQL Vues mono-tables avec clés avec clés 17

18 Mises à jours à partir des vues Problème : Il peut manquer des données dans la vue pour reporter dans la BD Comment définir une stratégie de report cohérente? L équation u(v(b)) = V(u'(B)) doit donc être vérifiée, en notant B la base, V le calcul de vue, u la mise à jour sur la vue et u' les mises à jour correspondantes sur la base. 18

19 Mise à jours à partir des vues simples : conditions d Oracle Les critères qui interdisent l utilisation de vues pour la mises à jours des tables sont : 1. Si une vue est définie par une requête contenant les opérateurs SET ou DISTINCT, ou une fonction de groupement, les opérations d insertions, d effacement ou de mise à jours (update) sont interdites à partir de la vue. 2. Si une vue est définie avec l options WITH CHECK OPTION, seul des enregistrement que la vue peut sélectionner peuvent être insérés ou mis à jour. 3. Si une colonne de la table d origine spécifiée comme NOT NULL, n ayant pas de valeur par défaut qui n est pas incluse dans la vue alors cette dernière ne peut être utilisée pour insérer des nouvelles données. 4. Si la vue à été crée en utilisant une expression, comme DECODE(deptno, 10, "VENTE",... ), la mise à jours ou la modification de la table n est pas possible à partir de la vue. 19

20 Mise à jours des vues avec jointure : conditions d Oracle Ne contiens pas les opérateurs : DISTINCT Fonctions d Agregation : AVG, COUNT, GLB, MAX, MIN, STDDEV, SUM, or VARIANCE Opérations ensemblistes : UNION, UNION ALL, INTERSECT, MINUS Clauses : GROUP BY ou HAVING Clauses : START WITH or CONNECT BY ROWNUM pseudocolumn Préservation des clés : il faut que les clés des tables jointes soient également clés de la vue. 20

21 Un exemple de vues jointes et des modifications possibles CREATE TABLE Dept_tab ( Deptno NUMBER(4) PRIMARY KEY, Dname VARCHAR2(14), Loc VARCHAR2(13)); CREATE TABLE Emp_tab ( Empno NUMBER(4) PRIMARY KEY, Ename VARCHAR2(10), Job varchar2(9), Mgr NUMBER(4), Hiredate DATE, Sal NUMBER(7,2), Comm NUMBER(7,2), Deptno NUMBER(2), FOREIGN KEY (Deptno) REFERENCES Dept_tab(Deptno)); 21

22 Un exemple de vues jointes et des modifications possibles CREATE VIEW Emp_dept_view AS SELECT e.empno, e.ename, e.deptno, e.sal, /* Empno reste clé primaire de la vue */ d.dname, d.loc /* DeptNo n est plus clé primaire */ FROM Emp_tab e, Dept_tab d /* opération de jointure */ WHERE e.deptno = d.deptno AND d.loc IN ('DALLAS', 'NEW YORK', 'BOSTON'); Comme il n y a pas conservation de la clé primaire pour Dept_Tab, il n est pas possible de modifier un élément de cette table. On peut effacer car il n y a qu une et une seule table dont les clés sont préservées (même cond. pour l insertion) 22

23 Plan du cours Gestion de la sécurité des données Utilisation de vues Optimisation des schémas de bases via la dénormalisation Placement du code applicatif dans le SGBD via les prodécures stockées 23

24 Schéma de base de données optimal? Optimisation par la dénormalisation? Non si Le système peut fonctionner correctement sans dénormalisation, ou Les performances du système ne sont pas plus acceptables après la dénormalisation, ou Le système sera moins fiable après dénormalisation. 24

25 Dénormalisation : précautions d usage et avantages Précautions nécessaires : Essayer d avoir une forme denormalisée mise à jours à partir d une forme normalisée (double l espace nécessaire), Utilisation de triggers ou de programmes pour le maintient automatique de la synchronisation des redondances, Utilisation de contraintes et de triggers pour le maintient de la cohérence relative à la redondance Avantages : Optimisation du temps de calcul 25

26 Dénormalisation : tables préjointes Condition : Ne contient pas de colonnes redondantes, Doit uniquement contenir les colonnes nécessaires au calcul, Doit être créées périodiquement via une requête SQL sur les tables normalisées (possible de l émuler via du code si le SGBD ne les proposent pas en natif). Avantage : pré-calcul des jointures Désavantage : maintient de la synchronisation Cette dénormalisation existe via les «vues matérialisées» (Oracle) ou «vues indexées» (SQL Server) dont l objet est de stocker le résultat de la requête définissant la vue dans une table interne. La définition de la vue matérialisée inclus alors les conditions de mise à jours de la table. 26

27 Dénormalisation : tables de Condition : reporting Une colonne par colonne du rapport Séquencement physique propre Ne pas recomposer des champs (1FN) Permet le pré-calcul (batch) des rapports Utilisé dans les outils/projets analytiques (par exemple, reportserver de la suite Microsoft) 27

28 Dénormalisation : tables miroirs / scindées / groupées Scission Horizontale : split de la table en tranches de données Mise en place du «partitionnement» des tables. Très avantageux pour des grandes tables puisque cela équivaut à construire N tables contenant chacune une partie des données gestion distinctes des indexes, réduction des collisions, Difficultés : trouver la clé de partitionnement la plus pertinente par sa séparation en partitions de taille aussi égales que possibles. Deviens très complexe à mettre en œuvre dans le cas de modèles composés d un grand nombre de tables. La plus part des SGBD offrent la fonctionnalité. Le partitionnement est alors soit Par rapport à une plage (range partitionning) : définition des bornes des différentes partitions (ensemble des données par années, ) Par liste : applicable à des attributs à faible cardinalité (répartition de la population par taille, ) Par clé de hash :» Soit via la définition d une fonction de calcul de clé» Soit via l utilisation d un calcul de clé de hash laissé au SGBD Scission Verticale : Des colonnes sont placées dans N tables qui partagent la clé primaire Des colonnes sont scindées en plusieurs colonnes afin d éviter les champs de grande taille (qui souvent mal gérés physiquement par les DBMS). Utilisation de vues pour redonner la vision externe d une seule table. Oracle propose le mécanisme de «cluster» de table permettant à des tables qui partagent une même clé primaire et sont souvent consultées en mêmes temps d être stockée dans les mêmes datablock ce qui en accélèrent les IO. 28

29 Dénormalisation : tables miroirs / scindées / groupées Tables Miroir : Demande, comme pour les tables pré-jointes, la mise en place d une synchronisation d une table «maitre» vers une table répliquée. Permet d avoir différents besoins (analytiques/transactionnels) sur une même base via la spécialisation des tables par usage Peut être géré via les vues matérialisées (ou équivalent) Regroupement des tables ayant des relations 1 1 voir 1 N dans une table unique mais doit dans ce dernier cas être analysé (cf formes normales). 29

30 Dénormalisation : données redondantes et groupes répétés La redondance des données si elle permet d éviter des jointures systématiques et si Peut de colonnes sont nécessaires, Les colonnes sont stables rarement modifiées, Utilisées par beaucoup d utilisateurs ou par peut d utilisateurs critiques. Les groupes répétés (supprime une table d association) si : Les données sont rarement voir jamais agrégées, Les données se présentent statistiquement selon un pattern correct Le nombre d occurrence est stable, Les données sont accédées collectivement, Le pattern d insertion ou d effacement est prédictible. 30

31 Dénormalisation : stockage des données calculées/dérivées Pré-calcul à condition que : Les données sources soient relativement stables, Le coût de calcul des dérivation est élevé, L utilisation des tables sources permet un recalcul rapide en cas de modification. 31

32 Dénormalisation : parcours de hiérarchie Construction d une table de pré-calcul des niveaux hiérarchiques Contient un enregistrement par relation hiérarchique, quel qu en soit le niveau. Peut intégrer des indications supplémentaires comme le statut de feuille Demande une génération par programme car impossible en SQL. ID IDPARENT DESCRIPTION ID ID_N1 ID_N2 ID_N3 DESCRIPTION 1 null Produits frais 1 null null null Produits Frais 2 1 Produits laitiers 2 1 null null Produits laitiers 3 1 Légumes 3 1 null null Légumes 4 1 Fuits 4 1 null null Fuits 5 2 Yaourts null Yaourts 6 2 Fromages null Fromages 7 6 Camembert Camembert 8 4 Orange null Orange 9 8 Orange sanguines Orange sanguines 10 4 Bananes null Bananes Bananes Planteur Bananes Planteur 32

33 Dénormalisation : résumé Dénormalisation Tables préjointes Reporting Miroir Scission Combinaison Redondance Répétition de groupes Dérivation Speed table A utiliser lorsque Le coût des jointures est prohibitif Des rapports spécifiques et critiques sont nécessaires Des données sont accédées simultanément par # env. Des groupes distincts accèdent à des éléments distincts Consolidation de relation 1-1 ou 1-N dans une table unique Réduction du nombre de jointure nécessaires Réduction du nombre d I/O et (potentiellement) de l espace de stockage nécessaire Transforme le calcul dynamique en calcul batch Gain en efficacité de parcours des hiérarchies 33

34 Plan du cours Gestion de la sécurité des données Utilisation de vues Optimisation des schémas de bases via la dénormalisation Placement du code applicatif dans le SGBD via les prodécures stockées 34

35 Où placer le code? Rôle du DBA en amont? Permet l écriture de code efficace et évite la réécriture complète Demande une bonne maîtrise des problématiques BD afin de conseiller pendant le design de l application voir d écrire les requêtes SQL Points essentiels pour arriver à un bon design : comprendre comment Les données sont stockées Coder le SQL d accès ou de modification Le SQL diffère des autres langages de programmation Mettre les requêtes SQL dans un langage hôte Optimiser les accès à la base en modifiant le SQL et les indexes Utiliser des méthodes de programmation permettant d éviter des pb de perf potentiels 35

36 Code dans la base 36

37 Code dans la base Avantage : Localisation du code SQL clairement identifiée, ce qui rend (par exemple) possible l évolution des schéma de données sans impacter les applicatifs clients, Inconvénient : La mise à jours d une fonctionnalité lié à un applicatif particulier peut également demander la mise à jours de la base de données : acteurs/technologies différentes Moyens possibles : Procédures stockées : fonctionnalités mises à disposition des applications externes. Trigger : ré-actions à des événements dans la base 37

38 Code dans la base : PL/SQL Langage déclaratif et procédural, proche dans sa structure du C, Pascal, (bloc déclaration des variables + bloc d instruction). Possède des éléments particuliers aux traitements de base de données (curseur), intègre des éléments «de type java» (collections) et permet l appel à des fonctionnalités externes. 38

39 Exemple (1/3) PROCEDURE pstatutcommande (lenocommande -- Déclaration de variables lenoclient Client.noClient%TYPE; ladatecommande Commande.dateCommande%TYPE ; lenoarticle Article.noArticle%TYPE ; laquantitécommandée LigneCommande.quantité%TYPE ; laquantitélivrée INTEGER; laquantitéenattente INTEGER; Commande.noCommande%TYPE ) IS -- Déclaration d'un curseur (CURSOR) PL/SQL pour itérer sur les lignes -- de la commande CURSOR lignescommande(unnocommande Commande.noCommande%TYPE) IS SELECT noarticle, quantité FROM LigneCommande WHERE LigneCommande.noCommande = unnocommande ; BEGIN DBMS_OUTPUT.PUT_LINE('Commande #:' TO_CHAR(leNoCommande)); SELECT INTO FROM WHERE noclient, datecommande lenoclient, ladatecommande Commande nocommande = lenocommande; 39

40 Exemple (2/3) DBMS_OUTPUT.PUT_LINE('noClient:' TO_CHAR(leNoClient)); DBMS_OUTPUT.PUT_LINE('dateCommande:' TO_CHAR(laDateCommande)); -- Le OPEN ouvre le CURSOR en lui passant les paramètres OPEN lignescommande(lenocommande); -- LOOP indique une boucle infinie LOOP -- Le FETCH retourne la ligne suivante FETCH lignescommande INTO lenoarticle, laquantitécommandée; -- test de sortie de la boucle LOOP : -- %NOTFOUND est un attribut du CURSOR qui permet de déterminer -- si le FETCH a atteint la fin de la table EXIT WHEN lignescommande%notfound; -- code fait à chaque itération DBMS_OUTPUT.PUT('noArticle :'); DBMS_OUTPUT.PUT(leNoArticle); DBMS_OUTPUT.PUT(' quantité commandée:'); DBMS_OUTPUT.PUT(laQuantitéCommandée); -- Chercher la quantité déjà livrée SELECT SUM(quantitéLivrée) INTO laquantitélivrée FROM WHERE DétailLivraison noarticle = lenoarticle AND nocommande = lenocommande ; 40

41 Exemple (3/3) IF (laquantitélivrée IS NULL) THEN DBMS_OUTPUT.PUT_LINE(' livraison en attente'); ELSE laquantitéenattente:= laquantitécommandée -laquantitélivrée; IF (laquantitéenattente = 0) THEN DBMS_OUTPUT.PUT_LINE(' livraison complétée'); ELSE DBMS_OUTPUT.PUT (' quantité en attente :'); DBMS_OUTPUT.PUT_LINE(laQuantitéEnAttente); END IF ; END IF ; END LOOP; -- Le CLOSE ferme le CURSOR CLOSE lignescommande; -- traitement des erreurs EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('Numéro de commande inexistant'); WHEN OTHERS THEN RAISE_APPLICATION_ERROR(-20001,'Exception levée par la procédure'); -- fin de la procédure END pstatutcommande; 41

42 Gestion des transactions COMMIT/ROLLBACK d un travail entier, Positionnement de «points de sauvegarde» (SAVEPOINT x) permettant de revenir à un état donné (ROLLBACK TO x), Positionnement de lock explicites sur des objets 42

43 Procédures stockées Structure des pg PL/SQL : Package (groupe de proc.), Procédures (cf ex.) Fonction -> retour de valeurs Possibilité d appel en PL/SQL : Fonction utilisateur/système de l instance base (cf droits ), Fonction dans une autre base liée via dblink, Fonction dans un autre langage (classes Java, ) Code généré dynamiquement Gestion des retours : Codes erreurs normalisé Tous type de valeur 43

44 Développement d application Triggers CREATE OR REPLACE TRIGGER Print_salary_changes BEFORE DELETE OR INSERT OR UPDATE ON Emp_tab FOR EACH ROW WHEN (new.empno > 0) DECLARE sal_diff number; BEGIN sal_diff := :new.sal - :old.sal; dbms_output.put('old salary: ' :old.sal); dbms_output.put(' New salary: ' :new.sal); dbms_output.put_line(' Difference ' sal_diff); END; 44

45 Trigger Utilisé pour : Vérifier la validité d une action Génération d erreur stoppant le traitement en cours Répercuter une action sur d autres éléments Attention! Possibilité de dead-lock si triggers liés 45

46 Comparatif PL/SQL T-SQL Fonctionnalité PL/SQL T-SQL Indexes Tables Triggers Procédures B-Tree, Bitmap, Partitionné, Function-Based, Domain Relationnelles, Objets, Temporaires BEFORE, AFTER, INSTEAD OF PL/SQL, Méthodes Java, Routines 3GL B-Tree Relationnelles, Temporaires AFTER, INSTEAD OF T-SQL Tableaux Disponibles Pas disponibles 46

47 Concepts de base relatifs aux schéma de données Liens entre bases de données : Database links Éléments de stockage des données : Tables et index-organized tables Clusters de tables Indexes et index types Dimensions Views Materialized views et materialized view logs Object tables, object types, et object views DBA - Maitrise ASR - Université 47

48 Concepts de base relatifs aux schéma de données Opérateurs internes : Sequences Synonyms Operators DBA - Maitrise ASR - Université 48

49 Concepts de base relatifs aux schéma de données Calculs intégrés dans la base via : Du PLSQL : Stored functions, procedures, et packages Et triggers Du Java : Java classes, Java resources, et Java sources Des librairies externes : External procedure libraries DBA - Maitrise ASR - Université 49

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

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étail

Considérons une partie d un modèle conceptuel de données avec les schémas d entités. Figure 1: Une partie du modèle conceptuel de données

Considérons une partie d un modèle conceptuel de données avec les schémas d entités. Figure 1: Une partie du modèle conceptuel de données Considérons une partie d un modèle conceptuel de données avec les schémas d entités suivants: EMP(EmpNo, Enom, Job, DirNo, Sal, Prime) DEPT(DeptNo, Dnom, Adr) Où EmpNo est la clé primaire de EMP et DeptNo

Plus en détail

TP Contraintes - Triggers

TP 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étail

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Module 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étail

Les 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. 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étail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases 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étail

Notes de cours : bases de données distribuées et repliquées

Notes 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étail

Bases de données et sites WEB

Bases 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étail

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing Présentation d Oracle 10g Chapitre VII Présentation d ORACLE 10g 7.1 Nouvelles fonctionnalités 7.2 Architecture d Oracle 10g 7.3 Outils annexes 7.4 Conclusions 7.1 Nouvelles fonctionnalités Gestion des

Plus en détail

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles) SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients

Plus en détail

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

A.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étail

Apprendre le langage SQL le DDL - 1 / 30 - Apprendre le langage SQL par l exemple

Apprendre le langage SQL le DDL - 1 / 30 - Apprendre le langage SQL par l exemple Apprendre le langage SQL le DDL - 1 / 30 - Apprendre le langage SQL par l exemple Ce document est publié sous licence Creative Commons CC-by-nc-nd. Il ne peut ni être modifié, ni faire l objet d une exploitation

Plus en détail

Cours Bases de données 2ème année IUT

Cours 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étail

//////////////////////////////////////////////////////////////////// Administration bases de données

//////////////////////////////////////////////////////////////////// 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étail

ISC21-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 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étail

Intégrité des données

Inté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étail

Web dynamique. Techniques, outils, applications. (Partie C)

Web dynamique. Techniques, outils, applications. (Partie C) Web dynamique Techniques, outils, applications (Partie C) Nadir Boussoukaia - 2006 1 SOMMAIRE 1. MySQL et PHP (20 min) 2. SQL (petits rappels) (20 min) 2 MySQL et PHP Synthèse 3 MySQL et PHP SGBD MySQL

Plus en détail

Cours 7 : Langage de définition, manipulation et contrôle des données

Cours 7 : Langage de définition, manipulation et contrôle des données Cours 7 : Langage de définition, manipulation et contrôle des données Objets d une base de données Dans un schéma Tables, vues Index, clusters, séquences, synonymes Packages, procédures, fonctions, déclencheurs

Plus en détail

Devoir Data WareHouse

Devoir 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étail

Administration 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 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étail

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste Christian Soutou Avec la participation d Olivier Teste SQL pour Oracle 4 e édition Groupe eyrolles, 2004, 2005, 2008, 2010, is BN : 978-2-212-12794-2 Partie III SQL avancé La table suivante organisée en

Plus en détail

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

COMMANDES 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étail

Laboratoires de bases de données. Laboratoire n 6. Programmation SQL. par Danièle BAYERS et Louis SWINNEN

Laboratoires 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étail

Optimisation SQL. Quelques règles de bases

Optimisation SQL. Quelques règles de bases Optimisation SQL Quelques règles de bases Optimisation des ordres SQL Page 2 1. QUELQUES RÈGLES DE BASE POUR DES ORDRES SQL OPTIMISÉS...3 1.1 INTRODUCTION...3 1.2 L OPTIMISEUR ORACLE...3 1.3 OPTIMISEUR

Plus en détail

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1 Cours 6 Sécurisation d un SGBD DBA - M1ASR - Université Evry 1 Sécurisation? Recette d une application Vérification des fonctionnalités Vérification de l impact sur le SI existant Gestion du changement

Plus en détail

Cours de Bases de Données Avancées 2006-2007 Groupe cinema, Rapport 4

Cours de Bases de Données Avancées 2006-2007 Groupe cinema, Rapport 4 1 Annexes Avec ce rapport il faut rendre en annexe le script SQL corrigé qui permet de créer la base de données selon votre modèle relationnel ainsi que de la peupler avec un nombre de tuples suffisant.

Plus en détail

Bases de données avancées

Bases 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étail

INSIA Bases de données ORACLE 2 SELECT avancé SQL*Plus SQL Developper

INSIA Bases de données ORACLE 2 SELECT avancé SQL*Plus SQL Developper INSIA Bases de données ORACLE SELECT avancé SQL*Plus SQL Developper http://st-curriculum.oracle.com/tutorial/dbxetutorial/index.htm http://st-curriculum.oracle.com/ http://www.oracle.com/ Bertrand LIAUDET

Plus en détail

Gestion des utilisateurs et de leurs droits

Gestion des utilisateurs et de leurs droits Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE

Plus en détail

Bases de Données Réparties Concepts et Techniques. Matthieu Exbrayat ULP Strasbourg - Décembre 2007

Bases de Données Réparties Concepts et Techniques. Matthieu Exbrayat ULP Strasbourg - Décembre 2007 Bases de Données Réparties Concepts et Techniques Matthieu Exbrayat ULP Strasbourg - Décembre 2007 1 Définition Une base de données répartie (distribuée) est une base de données logique dont les données

Plus en détail

Langage SQL : créer et interroger une base

Langage 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étail

Auto-évaluation DB2 for z/os: cours de base

Auto-évaluation DB2 for z/os: cours de base Auto-évaluation DB2 for z/os: cours de base Document: f1067test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION DB2 FOR Z/OS:

Plus en détail

BD parallèles et réparties

BD parallèles et réparties LOG660 - Bases de données de haute performance BD parallèles et réparties Département de génie logiciel et des TI BD parallèles vs réparties BD réparties Les données se trouvent sur plusieurs sites (noeuds)

Plus en détail

Cours Bases de données 2ème année IUT

Cours 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étail

Cours Bases de données 2ème année IUT

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours 13 : Organisation d une base de données, ou comment soulever (un peu) le voile Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Les clusters de table

Plus en détail

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle

Plus en détail

Le Langage SQL version Oracle

Le Langage SQL version Oracle Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn

Plus en détail

Du 10 Fév. au 14 Mars 2014

Du 10 Fév. au 14 Mars 2014 Interconnexion des Sites - Design et Implémentation des Réseaux informatiques - Sécurité et Audit des systèmes - IT CATALOGUE DE FORMATION SIS 2014 1 FORMATION ORACLE 10G 11G 10 FEV 2014 DOUALA CAMEROUN

Plus en détail

Auto-évaluation Oracle: cours de base

Auto-é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étail

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Bases de données relationnelles

Bases 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étail

Le Langage De Description De Données(LDD)

Le 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étail

CREATION WEB DYNAMIQUE

CREATION 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étail

Bases de Données Réparties

Bases de Données Réparties Bases de Données Réparties Architecture Mise en œuvre Duplication et Réplication Michel Tuffery BDR : Définition Ensemble de bases de données gérées par des sites différents et apparaissant à l utilisateur

Plus en détail

Bases de données réparties

Bases de données réparties Bases de données réparties J. Akoka - I. Wattiau 1 Contexte Technologique : des solutions de communication efficace entre les machines des SGBD assurent la transparence des données réparties standardisation

Plus en détail

Bases de Données & Interfaces Web. stanislas.oger@univ-avignon.fr

Bases de Données & Interfaces Web. stanislas.oger@univ-avignon.fr Bases de Données & Interfaces Web stanislas.oger@univ-avignon.fr 1 Architecture d'un SI Web Fonctionnement Dynamique avec Base de Données 2 Idée Dynamiser les pages avec des infos venant de BDD Enregistrer

Plus en détail

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Le 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étail

PRESENTATION. Document1 Serge GUERINET Page 1

PRESENTATION. Document1 Serge GUERINET Page 1 PRESENTATION Les domaines couverts par la série STG sont tous des pourvoyeurs ou exploitants des bases de données. Que l'on gère la relation aux clients, le suivi de l'activité financière, la comptabilité

Plus en détail

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Partie 0 : Gestion des tablespace et des utilisateurs... 3 Sommaire Partie 0 : Gestion des tablespace et des utilisateurs... 3 1- Créer deux TableSpaces votre_nom-tbs et Votre_nom-TempTBS :... 3 2. Créer un utilisateur qui porte votre nom :... 3 3. Attribuer à

Plus en détail

Master Exploration Informatique des données DataWareHouse

Master Exploration Informatique des données DataWareHouse Master Exploration Informatique des données DataWareHouse Binôme Ahmed BENSI Enseignant tahar ARIB SOMMAIRE I. Conception...1 1. Contexte des contrats...1 2. Contexte des factures...1 II. Modèle physique...2

Plus en détail

Feuille de TD 2 de BDA, M1 2008 2009 11-03-2011. SGBDRO avec Oracle. 1 Première version simpliste

Feuille de TD 2 de BDA, M1 2008 2009 11-03-2011. SGBDRO avec Oracle. 1 Première version simpliste Feuille de TD 2 de BDA, M1 2008 2009 11-03-2011 Les fichiers en format pdf des projections du cours sont disponibles sur la page : http://www.ibisc.univevry.fr/~serena mais ne pas les imprimer au bât.

Plus en détail

Les bases de données

Les 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étail

Instructions SQL. Première partie : Langage de description et de gestion des données

Instructions SQL. Première partie : Langage de description et de gestion des données Instructions SQL Première partie : Langage de description et de gestion des données Quelques instructions et leur syntaxe 1. Introduction Trois principales catégories d instructions. Instructions de création

Plus en détail

Intégrité sémantique dans les bases de données relationnelles

Inté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étail

Présentation du module Base de données spatio-temporelles

Présentation du module Base de données spatio-temporelles Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes

Plus en détail

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

ECR_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étail

CATALOGUE FORMATIONS 2015. DOMAINE Bases de données

CATALOGUE 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étail

Partie II Cours 3 (suite) : Sécurité de bases de données

Partie II Cours 3 (suite) : Sécurité de bases de données Partie II Cours 3 (suite) : Sécurité de bases de données ESIL Université de la méditerranée Odile.Papini@esil.univ-mrs.fr http://odile.papini.perso.esil.univmed.fr/sources/ssi.html Plan du cours 1 Introduction

Plus en détail

11. MySQL. Cours Web. MySQL. 11. MySQL. 11. MySQL. Structured Query Language. Lionel Seinturier. Université Pierre & Marie Curie

11. MySQL. Cours Web. MySQL. 11. MySQL. 11. MySQL. Structured Query Language. Lionel Seinturier. Université Pierre & Marie Curie Cours Web Lionel Seinturier Université Pierre & Marie Curie Lionel.Seinturier@lip6.fr Structured Query Language Langage de manipulation des données stockées dans une base de données interrogation/insertion/modification/suppression

Plus en détail

Sauvegarde locale des données : SharedPreferences, SQLite, Files

Sauvegarde locale des données : SharedPreferences, SQLite, Files Sauvegarde locale des données : SharedPreferences,, Files Jean-Ferdinand Susini Maître de conférences au CNAM Sources : Wikipedia, developper.android.com Paris, 31/05/2015 Les SharedPreferences 2 Héritier

Plus en détail

Bases de Données Avancées PL/SQL

Bases 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étail

Quelques aspects du Relationnel-Objet du SGBD Oracle

Quelques aspects du Relationnel-Objet du SGBD Oracle Département informatique de l IUT (de l université) de Bordeaux Cours de Bases de Données : présentation partielle d un SGBD RO 12 août 2015 Olivier Guibert Quelques aspects du Relationnel-Objet du SGBD

Plus en détail

CHAPITRE 4 POLITIQUES DE CONTRÔLES DES ACCÈS SOUS ORACLE ADMINISTRATION ET TUNING DE BASES DE DONNÉES 10/05/2015 RESPONSABLE DR K.

CHAPITRE 4 POLITIQUES DE CONTRÔLES DES ACCÈS SOUS ORACLE ADMINISTRATION ET TUNING DE BASES DE DONNÉES 10/05/2015 RESPONSABLE DR K. Université des sciences et de la Technologie Houari Boumediene USTHB Alger Département d Informatique CHAPITRE 4 ADMINISTRATION ET TUNING DE BASES DE DONNÉES RESPONSABLE DR K. BOUKHALFA POLITIQUES DE CONTRÔLES

Plus en détail

Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML

Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML MariaDB : https://mariadb.org/ Site officiel MySQL : http://www-fr.mysql.com/ Zone pour les développeurs : http://dev.mysql.com/

Plus en détail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage 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étail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013 NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée

Plus en détail

Si le médecin agit en situation d urgence, insérer une trace de ses requêtes. Si le patient est cardiaque, le préciser dans le motif de la visite

Si le médecin agit en situation d urgence, insérer une trace de ses requêtes. Si le patient est cardiaque, le préciser dans le motif de la visite Précompilateur Compilateur LP PROGRAMMATION SQL Limites de SQL Problématique de la connexion langage hôte/sql 3 approches Embedded SQL (PRO*C, SQLJ ) API de bas niveau (SQL-CLI, ODBC, ) Langage dédié (PL/SQL,

Plus en détail

Compétences Business Objects - 2014

Compé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étail

Gestion de base de données

Gestion 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étail

1. 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. 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étail

Bases de données et sites WEB Licence d informatique LI345

Bases 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étail

Olivier Mondet http://unidentified-one.net

Olivier 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étail

Présentation du module. Base de données spatio-temporelles. Exemple. Introduction Exemple. Plan. Plan

Présentation du module. Base de données spatio-temporelles. Exemple. Introduction Exemple. Plan. Plan Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Partie 1 : Notion de bases de données (Conception

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

Pour les débutants. langage de manipulation des données

Pour les débutants. langage de manipulation des données Pour les débutants SQL : langage de manipulation des données Les bases de données sont très utilisées dans les applications Web. La création, l interrogation et la manipulation des données de la base sont

Plus en détail

Comparaison de tables à distance

Comparaison de tables à distance Rapport de recherche A/375/CRI Fabien Coelho fabien@coelho.net composé avec LAT E X, révision 463 du document 1 Fabien Coelho job enseignant-chercheur à MINES ParisTech ingénieur civil 1993, docteur en

Plus en détail

A QUOI SERVENT LES BASES DE DONNÉES?

A 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étail

Langages de requêtes. Plan du cours. Base de données exemple. Objectifs du cours. Plan du cours. Base de données exemple

Langages de requêtes. Plan du cours. Base de données exemple. Objectifs du cours. Plan du cours. Base de données exemple Plan du cours Langages de requêtes M1 Informatique Année 2010-2011 Jérôme Darmont Introduction Algèbre relationnelle Langage SQL Langage XQuery http://eric.univ-lyon2.fr/~jdarmont/ http://eric.univ-lyon2.fr/~jdarmont/

Plus en détail

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres. INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES Durée : 1h30 Date : 17/05/2006 Coordonnateurs : Amel Bouzeghoub et Bruno Defude Documents autorisés : ceux distribués en cours Avertissements

Plus en détail

Bases 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 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étail

Cours Bases de données

Cours Bases de données Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles

Plus en détail

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions

Plan 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étail

Systèmes de Gestion de Bases de Données

Systèmes de Gestion de Bases de Données Systèmes de Gestion de Bases de Données Luiz Angelo STEFFENEL DUT Informatique 2ème année IUT Nancy Charlemagne Vues Vue : une table virtuelle de la base de données dont le contenu est défini par une requête

Plus en détail

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

Un peu d histoire. Qu est-ce que MongoDB?

Un peu d histoire. Qu est-ce que MongoDB? Un peu d histoire Initialement développé par 10gen en 2007 10gen rebaptisé en 2013 MongoDB, Inc. Son nom vient de "humongous" (c est énorme!!) Mis en open source en 2009 Dernière version stable (3.0.2)

Plus en détail

A QUOI SERVENT LES BASES DE DONNÉES?

A 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étail

Cours Web n o 7 MySQL et PHP

Cours Web n o 7 MySQL et PHP Introduction aux bases de données Cours Web n o 7 MySQL et PHP Sandrine-Dominique Gouraud (gouraud@lri.fr) Pierre Senellart (pierre@senellart.com) Semaine du 7 novembre 2005 S.-D. Gouraud, P. Senellart

Plus en détail

Testez vos connaissances avec Oracle Forms 11g Niveau débutant Réponses aux questions

Testez vos connaissances avec Oracle Forms 11g Niveau débutant Réponses aux questions Testez vos connaissances avec Oracle Forms 11g Niveau débutant Réponses aux questions Document préparé par Abderrahmane Abed Octobre 2013 Version 1.0 Courriel : aabed@oraweb.ca Site web: www.oraweb.ca

Plus en détail

Bases de données. Chapitre 1. 1.1 Généralité sur les bases de données. 1.2 Avec sqlite3. 1.1.1 Le langage SQL et les bases de données

Bases de données. Chapitre 1. 1.1 Généralité sur les bases de données. 1.2 Avec sqlite3. 1.1.1 Le langage SQL et les bases de données Chapitre 1 Bases de données 1.1 Généralité sur les bases de données 1.1.1 Le langage SQL et les bases de données La base de données (BDD) est un système qui enregistre des informations. Ces informations

Plus en détail

Les bases de données Page 1 / 8

Les bases de données Page 1 / 8 Les bases de données Page 1 / 8 Sommaire 1 Définitions... 1 2 Historique... 2 2.1 L'organisation en fichier... 2 2.2 L'apparition des SGBD... 2 2.3 Les SGBD relationnels... 3 2.4 Les bases de données objet...

Plus en détail

Bases de Données Avancées

Bases de Données Avancées 1/62 Bases de Données Avancées Introduction & Rappel Conception et Modélisation 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

Plus en détail

Gestion 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 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étail

Support de cours «SGBD»

Support de cours «SGBD» Direction Générale Institut Supérieur des Des Etudes Technologiques Etudes ******** DGET ******* Technologiques du Kef Support de cours «SGBD» Réalisé par : BOUKCHIM Mosaab (AT-Iset de Kef) HOSNI Anis

Plus en détail

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Partie 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étail

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Table 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étail

SQL SERVER 2008 Le 20/10/2010

SQL SERVER 2008 Le 20/10/2010 Définitions SQL SERVER 2008 Le 20/10/2010 Une base de données est un objet particulièrement difficile à définir puisqu il est abordé en pratique selon différents points de vue : Pour un administrateur,

Plus en détail

XML et Bases de données. XMLType Oracle XML DB

XML et Bases de données. XMLType Oracle XML DB Oracle XML DB Oracle XML DB Depuis la version 9i et de façon enrichie dans la version 10g, Oracle propose des outils pour gérer des documents XML Depuis la 10g il n'y a plus d'extraction car auparavant

Plus en détail

SQL Historique 1982 1986 1992

SQL 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étail