RO sans fil imbriqué

[30 minutes]

L'on souhaite réaliser une base de données permettant de gérer tous les relais Wifi sur un site d'entreprise. Chaque relais est caractérisé par une coordonnée géographique (de type CooT, dont le code SQL3 est fourni ci-après) et fait référence à un modèle. On associe également à chaque relais son prix d'achat. Chaque modèle possède un type qui l'identifie de façon unique, une marque et une puissance.

CREATE TYPE CooT AS OBJECT (
latitude DECIMAL(5,3),
longitude DECIMAL(5,3)
);

Proposez une implémentation RO SQL3 sous Oracle exploitant le modèle imbriqué. Vous proposerez un MCD et un MLD préalablement pour vous aider.

MCD

MLD

type CooT <latitude:decimal, longitude:decimal>
table Modele (#type:varchar, marque:varchar, puissance:entier)
table Relais (#id:entier, coo:CooT, prix:decimal, modele=>Modele)

SQL

CREATE TABLE Modele  (
type VARCHAR(25),
marque VARCHAR(25),
puissance Number(6),
PRIMARY KEY (type)
);
CREATE TABLE Relais (
id NUMBER(9),
coo CooT,
prix NUMBER(6,2),
modele VARCHAR(25) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (modele) REFERENCES Modele (type)
);

Insérer les données suivantes dans votre base de données :

  • Un modèle de marque SuperWif et de type X1, puissance 25mW

  • Deux relais de ce modèle respectivement aux coordonnées (48.853 ; 2.35) et (48.978 ; 3.01), achetés chacun 100€.

-- Insertion du modèle X1
INSERT INTO Modele VALUES ('X1','SuperWif',25);
-- Insertion des relais
INSERT INTO Relais VALUES (1,CooT(48.853,2.35),100,'X1');
INSERT INTO Relais VALUES (2,CooT(48.978,3.01),100,'X1');

Écrivez deux requêtes permettant de renvoyer respectivement :

  • La puissance du relais situé à la coordonnée (48.853,2.35)

  • La moyenne des prix des relais pour chaque modèle (type et marque)

SELECT m.puissance
FROM Relais r, Modele m
WHERE r.modele = m.type
AND r.coo.latitude=48.853 AND r.coo.longitude=2.35
SELECT AVG(r.prix)
FROM Relais r, Modele m
WHERE r.modele = m.type
GROUP BY m.marque, m.type
AccueilCours > Apport du modèle imbriqué au passage conceptuel-logique > Exercice : RO sans fil imbriqué< PrécédentSuivant >