Escolar Documentos
Profissional Documentos
Cultura Documentos
1 ING
Institut Suprieur dInformatique ISI - Tunis
Anne Universitaire 2016-2017
Dorra BEN AYED MEZGHANI
1
26/02/2017
Type simple
Pointeurs
Tables imbriques
Dans une table relationnelle
Dans une table objet
Tables pr-dimensionnes
Manipulation des collections
2
26/02/2017
3
26/02/2017
4
26/02/2017
10
5
26/02/2017
11
Insertion de lignes
INSERT INTO TabSalaris
VALUES ('1234', 'BenSalah', 'Mohamed',
TAdresse('20 rue de la rpublique', 'Sfax', '3021'),
1200, 400, TO_DATE('14/01/00', 'DD/MM/YY'));
Slection de lignes :
Pour afficher la valeur d'un attribut d'une colonne
de type objet, il faut faire prcder le nom de
l'attribut, du nom de la colonne :
nomColonne.nomAttribut
Exemples :
SELECT s.adresse.ville FROM TabSalaris s;
12
6
26/02/2017
Modification de ligne
L'accs la valeur modifier se fait de la mme
manire que pour la slection.
Exemple :
Update tabSalaris s
SET s.adresse.codePostal ='3000'
WHERE num='1234';
Suppression d'un type d'objet
Un type ne peut tre supprim que s'il n'est pas
rfrenc dans la description d'un autre type objet ou
d'une table.
DROP TYPE nomTypeObjet;
13
14
7
26/02/2017
15
16
8
26/02/2017
Affichage
17
18
9
26/02/2017
19
Cration
CREATE TYPE <nom_type> AS OBJECT (
<attribut1> <type1>,
<attribut2> <type2>,
<attributn> <typen>, );
20
10
26/02/2017
21
22
11
26/02/2017
23
Une table objet relationnelle est une table qui contient des
lments de type objet.
Chaque lment est identifi par un numro appel OID (Object
Identifier).
Exemple avec le type t_adresse
CREATE TABLE adresses OF t_adressse ;
Remarque
On peut crire des contraintes comme en relationnel standard
lors de la cration de la table,
on peut dfinir des cls, etc.
Cas3
CREATE TABLE adresses OF t_adresse (ville DEFAULT Tunis) ;
24
12
26/02/2017
- vision relationnelle
25
26
13
26/02/2017
. . . . .
28
14
26/02/2017
. . .
29
30
15
26/02/2017
-- a est un alias de table et REF est un mot cl pour rcuprer les OID
Remarque :
Dans le cas dune table relationnelle standard utilisant des types objets, on
naura pas dOID pour les n-uplets donc pas de SELECT REF() ou de
SELECT VALUE()
31
Reprsentation UML
32
16
26/02/2017
Reprsentation UML
adresse
33
Exemple de manipulation
UPDATE personne e
SET e.adresse.ville = Tunis',
e.nom = BenFOULEN
WHERE e.nom = BenFOULEN;
34
17
26/02/2017
Faux:
SELECT employeur.activity
FROM Cadre;
Faux:
SELECT Cadre.Employeur.activity
FROM Cadre;
Correct:
SELECT cc.Employeur.activity
FROM Cadre cc;
35
18