Références entre enregistrements avec les OID (extension au LDD SQL)

LDD SQL3

CREATE TYPE  type_objet AS OBJECT ...
CREATE TABLE table1 OF type_objet ...
CREATE TABLE table2 (
 ...
 clé_étrangère REF type_objet,
 SCOPE FOR (clé_étrangère) IS table1,
 );

SCOPE FOR

Renforce l'intégrité référentielle en limitant la portée de la référence à une table particulière (alors que REF seul permet de pointer n'importe quel objet de ce type)

CREATE OR REPLACE TYPE typCours AS OBJECT(
pkannee number(4),
pknum number(2),
titre varchar2(50),
type char(2),
refintervenant REF typIntervenant,
debut date,
MEMBER FUNCTION fin RETURN date
);
/
CREATE TABLE tCours OF typCours (
CHECK (pkannee>2000 and pkannee<2100),
type NOT NULL,
CHECK (type='C' or type='TD' or type='TP'),
refintervenant NOT NULL,
SCOPE FOR (refintervenant) IS tIntervenant,
PRIMARY KEY(pkannee, pknum)
);
AccueilCours > Tables objets et OID > Références avec OID< PrécédentSuivant >