Définition d'un type objet dans un package
Bonjour,
J'aurais voulu définr un type objet avec ses méthodes (member function) à l'intérieur d'un package mais ma commande est refusée.
Est-ce que ce type de déclaration est totalement invalide ou est-ce que j'ai fait une erreur quelque part ?
Code:
1 2 3 4 5 6 7 8 9 10
| create package MonPkg
as
type MonObjet is object
( Chaine varchar2(30)
, Nombre number(2,0)
, member function Methode
return varchar2
);
end;
/ |
Citation:
Elément Package MONPKG compilé
LINE/COL ERROR
--------- -------------------------------------------------------------
3/28 PLS-00103: Encountered the symbol "OBJECT" when expecting one of the following: ( array new range record varray char_base number_base decimal date_base clob_base blob_base bfile_base table ref fixed varying sparse The symbol "record was inserted before "OBJECT" to continue.
6/37 PLS-00103: Encountered the symbol "METHODE" when expecting one of the following: := . ( ) , @ % not null range default external character
Je n'ai pas poussé plus loin vers la définition du PACKAGE BODY puisque tout le reste dépend de ce TYPE.
Je précise que ce type ne sera utilisé qu'à l'intérieur de ce package et j'aimerais éviter de l'exposer au niveau du schéma.