Les collections imbriquées (LDD)

Implémentation des collections de scalaires sous forme de tables imbriquées en SQL3

-- 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;

Gestion d'attribut multivalué par imbrication de collection de scalaires

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;

Implémentation des collections d'enregistrement sous forme de tables imbriquées en SQL3

--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;

Gestion de composition par imbrication de collection d'enregistrements

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;
AccueilCours > Les tables imbriquées > Les collections imbriquées< PrécédentSuivant >