sql >> Base de Datos >  >> RDS >> Oracle

Consultar una tabla anidada

No entiendo el error específico que está recibiendo, pero generalmente necesita incluir una conversión explícita al tipo apropiado en la instrucción SQL:

open O_CURSOR for select * from table(CAST(dados AS t_pontos));

Esto se debe a que la declaración se entrega desde PL/SQL al motor SQL para su procesamiento y no tiene información sobre el tipo de variable más allá de que esté definida por el usuario.

Además, esto solo funciona si el tipo (t_pontos ) se declara a nivel de esquema, es decir, con un CREATE TYPE declaración. Si se declara en algún lugar del código PL/SQL, p. en una especificación de paquete, el motor SQL no puede acceder a la definición de tipo.