2010-02-23 10 views
1

J'ai un type myType déclaré avec une procédure de membre insert_obj.Procédure de membre appelant Argument NULL SELF Oracle

Quand j'essaye ce code, je reçois l'erreur suivante:

declare 
    v_obj myType; 
begin 
    v_obj.insert_obj(1,2,3); 
end; 

ORA-30625: method dispatch on NULL SELF argument is disallowed 

Je suppose c'est parce que je n'ai pas l'objet sur lequel appeler la méthode ...

mais je ne peux pas faire

select value(a) into v_obj from myTable 

car la table est vide (et je veux l'insérer).

Comment puis-je obtenir un objet pour appeler ma méthode?

Merci

Répondre

1

Vous pouvez utiliser un constructeur:

v_obj myType := new myType(); 
+0

fait ce travail si myType a des paramètres? – joec

+0

Non, mais vous pouvez fournir les paramètres. –