-- Déclaration d'un type abstrait de collection
CREATE TYPE liste_nom_type AS TABLE OF nom_type_scalaire;
-- Déclaration d'une table imbriquant une autre table
CREATE TABLE nom_table_principale (
nom_attribut type_attribut,
...
nom_attribut_table_imbriquée liste_nom_type,
...
)
NESTED TABLE nom_attribut_table_imbriquée STORE AS nom_table_stockage;
CREATE OR REPLACE TYPE typListeTelephones AS TABLE OF number(10);
/
CREATE TABLE tIntervenant (
pknom varchar2(20) PRIMARY KEY,
prenom varchar2(20) NOT NULL,
ltelephones typListeTelephones
)
NESTED TABLE ltelephones STORE AS tIntervenant_nt1;
--Création d'un type abstrait d'objet
CREATE TYPE nom_type AS OBJECT (...);
-- Déclaration d'un type abstrait de collection
CREATE TYPE liste_nom_type AS TABLE OF nom_type;
-- Déclaration d'une table imbriquant une autre table
CREATE TABLE nom_table_principale (
nom_attribut type_attribut,
...
nom_attribut_table_imbriquée liste_nom_type,
...
)
NESTED TABLE nom_attribut_table_imbriquée STORE AS nom_table_stockage;
CREATE OR REPLACE TYPE typSpecialite AS OBJECT (
domaine varchar2(50),
technologie varchar2(50)
);
/
CREATE OR REPLACE TYPE typListeSpecialites AS TABLE OF typSpecialite;
/
CREATE TABLE tIntervenant (
pknom varchar2(20) PRIMARY KEY,
prenom varchar2(20) NOT NULL,
lspecialites typListeSpecialites
)
NESTED TABLE lspecialites STORE AS tIntervenant_nt2;