Bonsoir
je travail sur une Base objet avec Oracle 10g, et dans mon Diag Classe j'ai 2 classe (ensiegnant et etudiant) qui héritent de la classe Abonne, donc j'ai creer 2 table(ensiegnant et etudiant) qui hérite de la table Abonne avec le mot clé UNDER comme suit:
ici j'ai pas creé une table pour AbonneType pasque j'ai pas des enregestrements pour ça.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 CREATE OR REPLACE TYPE abonneType AS OBJECT (codeAbonne NUMBER(20), nomAb VARCHAR2(20) )NOT FINAL //creation de type pere AbonneType CREATE OR REPLACE TYPE profType UNDER abonneType (matriprof VARCHAR2(20), departprof VARCHAR2(20) )// type prof ou ensiegnant(le meme) qui hérite de abonne CREATE OR REPLACE TYPE etudiantType UNDER abonneType (matriEtud VARCHAR2(20), classeEtud VARCHAR2(20) ) CREATE TABLE Prof OF profType (CONSTRAINT Prof_codeAbonne_pk PRIMARY KEY(codeAbonne)) / // table prof CREATE TABLE Etudiant OF etudiantType (CONSTRAINT Etudiant_codeAbonne_pk PRIMARY KEY(codeAbonne)) /
pour les tables prof et etudiant ont les memes clé primere(codeAbonne) elles héritent de Type AbonneType
donc je voudrai ecrire une requette pour recuperer les profs et les etudiants par un codeAbonne connu comme par Exemple l'abonne(prof ou etudiant) qui a le codeAbonne 5, ici je sais pas est ce que je fait SELECT from Etudiant ou Prof pasque je sais pas ce ou cette Abonne est ce que etudiant ou prof. ce ca
j'ai pensé creer une table Abonne et fait les enregstrement apartir d'elle mais je trouve qu'elle peut pas contenir le reste des attributs(Mat....)
Merçu d'avance
Partager