Déclaration des types utilisateurs en SQL3 (extension au LDD)

SyntaxeDéclaration de type

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
/

SyntaxeHéritage de type

1
CREATE TYPE sous_type UNDER sur_type (
2
 Déclarations spécifiques ou surcharges
3
) ;

RemarqueNOT FINAL

Pour être héritable, un type doit être déclaré avec la clause optionnelle NOT FINAL.

RemarqueType retourné par une méthode

« The datatype cannot specify a length, precision, or scale. »

http://docs.oracle.com/cd/B13789_01/server.101/b10759/statements_5009.htm