Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle PLSQL retorna um tipo de linha


você o definiu como objeto no nível do banco de dados, portanto, esse objeto deve ser inicializado.

Você pode fazer isso para inicializá-lo com null valores antes de fazer sua seleção como o seguinte:
row_type := foo_type(null,null)

Mas a solução mais adequada aqui seria alterar o select para o seguinte:
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!