REM 1. Insertion des données 
insert into departement(numDept, nomDept, lieu)
   values(10, 'Direction', 'Nice')
REM Une autre façon d'ajouter une ligne en la considérant comme un objet :

insert into departement values(
   departement_type(20, 'Comptabilité', 'Marseille'))
insert into employe (matricule, nom, adresse, salaire, superieur, departement)
  values(125, 'Dupond', adresse_type(15, 'rue Victor Hugo', 'Nice'), 
         12500, null, null)
insert into employe (matricule, nom, salaire, superieur, departement)
   values(200, 'Leroy', 25000, null, null)


insert into employe (matricule, nom, salaire, superieur, departement)
   select 210, 'Ravier', 25000, ref(e), ref(d)
   from employe e, departement d
   where e.matricule = 125 and d.numDept = 10



insert into employe (matricule, nom, salaire, superieur, departement)
  select 300, 'Toto', 20000, ref(e), ref(d) from employe e, departement d
  where e.matricule = 210 and d.numDept = 10;


REM autre solution possible dans les dernières versions d'Oracle
REM sans doute pas portable. Ne pas oublier les parenthèses autour des selects.
insert into employe (matricule, nom, salaire, superieur, departement)
values (300, 'Toto', 20000,
(select ref(e) from employe e where e.matricule = 210),
(select ref(d) from departement d where d.numDept = 10)) REM 2. Afficher des informations sur les employés select matricule, nom, e.adresse.ville, e.superieur.nom, e.departement.lieu
from employe e; REM 3. Employés du département 10 select nom, e.departement.numdept
from employe e
where e.departement.numdept = 10;