Documente Academic
Documente Profesional
Documente Cultură
Question 1 (2points)
On considre une base de donnes de livres dont le schma Entit/Association est donn ci-
dessous :
Exemplaire
titre emprunte
0 :N 1 :1
isbn
1 :N 0 :N Personne
Livre Auteur Nom
0 :N
1 :N
3: 3
0 :N
LivresPrfrs
contenu citations
0 :N
1 :1
Chapitre
titre numro
On prcise les points suivants. Un livre possde un numro unique (isbn). Une personne a
trois livre prfrs et emprunte un livre a la fois. Un livre est constitu de chapitres
numrots. Dans un chapitre on peut ventuellement trouver des citations extraites dautres
livres.
Donner, dans lordre, les instructions SQL3 de cration du schma dune telle base de
donnes, en compltant la case rponse approprie et en respectant exactement les consignes
suivantes :
Les types reprsentant des entits doivent avoir le mme nom que lentit
correspondante, de mme pour les attributs
Les attributs reprsentant des associations doivent avoir le mme nom que
lassociation
On crera le minimum de tables ncessaires stocker toutes les informations de la
base. Une table stockant les objets dun type A sappellera EnsA.
Sil est ncessaire de crer un type intermdiaire pour reprsenter une collection
(varray ou table) dobjet de type A, on lappellera LesA.
UPMC. UFR 922. Examen Li345 22 juin 2006.
Question 2 (4points)
nom VARCHAR2(10)
);
------------------------------------------------------------------------------
CREATE TYPE Roue AS OBJECT (
numero NUMBER(20),
modele REF ModeleRoue,
marque VARCHAR2(50)
);
Insrer la voiture de numro 115643. Cette voiture est une Toyota dont le moteur porte le
numro 589 et est de type Super sans plomb et qui possde une seule roue (les autres nont
pas encore t montes) de numro 56, de marque Michelin et de type Grosse Roue .
La base de donnes est considre comme tant initialement vide et vous veillerez insrer
tous les n-uplets ncessaires.
1) Les numros de voitures dont le moteur est de type super et qui sont de type
Peugeot
UPMC. UFR 922. Examen Li345 22 juin 2006.
SELECT v.numero From EnsVoiture v where exists (select * from table(v.roues) r where
r.numero=554;