Déclaration des types utilisateurs en SQL3 (extension au LDD)
Syntaxe : Déclaration de type
Appuyer sur espace pour rester en pause.
1
CREATE TYPE nom_type AS OBJECT (
2
nom_attribut1 type_attribut1
3
...
4
MEMBER FUNCTION nom_fonction1 (parametre1 IN|OUT type_parametre1, ...) RETURN type_fonction1
5
...
6
) [NOT FINAL];
7
/
8
CREATE TYPE BODY nom_type
9
IS
10
MEMBER FUNCTION nom_fonction1 (...) RETURN type_fonction1
11
IS
12
BEGIN
13
...
14
END ;
15
MEMBER FUNCTION nom_fonction2 ...
16
...
17
END ;
18
END ;
19
/
Syntaxe : Héritage de type
Appuyer sur espace pour rester en pause.
1
CREATE TYPE sous_type UNDER sur_type (
2
Déclarations spécifiques ou surcharges
3
) ;
Remarque : NOT FINAL
Pour être héritable, un type doit être déclaré avec la clause optionnelle NOT FINAL
.
Remarque : Type retourné par une méthode
Appuyer sur espace pour rester en pause.
« The datatype cannot specify a length, precision, or scale. »
http://docs.oracle.com/cd/B13789_01/server.101/b10759/statements_5009.htm