Académique Documents
Professionnel Documents
Culture Documents
Master 2 ACADEMIQUE
SGBD 3
Orienté objet
(OBJECTSTORE,ORACLE 7/8)
SGBD 2
Relationnel , Langage SQL(ORACLE
5/6, DB2)
SGBD 1
Hiérarchies, réseaux
SGF
1955 1960 1970 1980 1985 1990 1995 2007
Module:
Module: Base
Base de
de Données
Données Avancée
Avancée ©
©A.AGGOUNE
A.AGGOUNE Niveau:
Niveau: Master2AC
Master2AC Université
Université de
de Guelma
Guelma
2. Motivations
Le modèle relationnel connaît un très grand succès et s'avère
très adéquat pour les applications traditionnelles des bases de
données (gestion de stock, gestion des commandes, systèmes de
réservation)
ODMG 93 SQL2
ODMG II SQL3 ANSI X3H2
ODMG (97) ISO/IEC JTC1/ SC21/WG3
Convergence SQL4
CA-Jasmine, ? Oracle, Informix,
ObjectStore, O2 Sybase, IBM, DB2,
Versant, POET, ... CA-OpenIngres
Référence et Héritage et
identité Le relationnel réutilisation
Opération
Collection, objets
Polymorphisme
Héritage
Relationnel étendu= Relationnel + Objet
Module: Base de Données Avancée © A.AGGOUNE Niveau: Master2AC Université de Guelma
4. Le Relationnel Etendu
• La compatibilité est ascendante.
• Extension de SQL version 3 (ORACLE 8)
Table Objet relationnelle « Personne »
NSécu Nom Prénom Adresse Voiture
12345 AIB Ahmed 19 juin Guelma Marque Type Photo
AUDI A5
Range
LR.V6
Rover
Corps de l’ADT:
<OID option> ::= WITH OID [NOT] VISIBLE
Objets sans OID par défaut
<subtype clause> ::= UNDER <supertype clause>
Possibilité d’héritage avec résolution de
conflits explicite
<member list>
<attribute definition> : attributs publics ou privés
<function declaration> : opérations publiques
<operator name list> : opérateurs surchargés
<ordering definition> : ordre (Equals, less, than,
relative, hash)
<cast clause> : fonction de conversion de types
<procedure clause> : procédure avec corps défini dans
SQL3 ou externe
Exemple:
CREATE TYPE Adresse AS OBJECT (Num INTEGER,
Rue VARCHAR(20), Ville CHAR(15), Pays CHAR(10));
Adresse
• Domaine de relation
Ex: CREATE TABLE LesPersonnes OF Person
Chaque ligne de la table LesPersonnes: type Person
• Le mot clé UNDER désigne un type qui hérite d’un autre type.
En ORACLE il faut ajouter la clause NOT FINAL avant de
définir les sous types et les mots INSTANTIABLE et FINAL
après la définition des sous types
• Cas de symétrie:
Direction X → Y (X est associé à plusieurs Y)
CREATE TYPE Y;
CREATE TYPE Ens_Y AS TABLE OF REF Y;
CREATE TYPE X AS OBJECT ( a Ens_Y, …);
Direction Y → X (Y est associé à un X)
CREATE TYPE Y AS OBJECT (b REF X …);
•Cas d’agrégation:
Num Nom Date conduit
102454 POEUGOT PARTENER
105 Mohamed 05/02/1970 352974 RENAULT LOGANE
48869 AUDI A5
102454 POEUGOT PARTENER
106 Ali 13/05/1977
585669 CITROEN C4
4.2. Création des tables à partir des types
• Les données d’un type ne sont persistantes que si elles sont
rangées dans une table.
• En SGBD Objet-relationnel:
OID= identificateur d’objet (Object IDentifier )
• Indépendant de la valeur
• Unique
• Permanant
• Immuable
Module: Base de Données Avancée © A.AGGOUNE Niveau: Master2AC Université de Guelma
4.3. Définition d’attributs référence
• Chaque instance d’une table d’objets possède un identificateur
d’objet qui :
• Identifie l’objet stocké dans ce n-uplet de façon unique,
• C'est une colonne cachée, générée par le système,
• Sert à référencer l’objet,
• Oracle lui associe un index.
Opérateur Value
• Pour obtenir la valeur d’un objet, on utilise la fonction VALUE,
qui prend la référence d’un objet et renvoie sa valeur.
• Manipulation avancée:
– Définition des types complexes avec héritage
– Appels de méthodes en résultat et qualification
– Imbrication des appels de méthodes
– Surcharge d'opérateurs
– Triggers
Module: Base de Données Avancée © A.AGGOUNE Niveau: Master2AC Université de Guelma
SGBD objet-relationnels
Extension des SGBD relationnels: