Oracle
 sql >> Base de données >  >> RDS >> Oracle

Oracle PLSQL renvoie un type de ligne

vous l'avez défini comme objet au niveau de la base de données, cet objet doit donc être initialisé.

Vous pouvez soit le faire pour l'initialiser avec null valeurs avant de faire votre sélection comme suit :

row_type := foo_type(null,null)

Mais la solution la plus appropriée ici serait de changer la sélection comme suit :

select
 foo_type(b1,b2)  -- Create a foo_type from the select
into 
 row_type -- throw this initialized foo_type into your variable row_type
from 
 table_xxx 
where 
 rownum=1; --Only one row!