Hola chic@s.
Creando objetos y referencias en oracle me ha surgido una pequeña duda.
Primero os mostraré mi escenario para que os hagáis una idea.
Código SQL:
Ver originalCREATE OR REPLACE TYPE TipoUsuario AS object (
usuario varchar2(20),
fechaAlta DATE
);
Código SQL:
Ver originalCREATE OR REPLACE TYPE TipoTabla AS object (
tabla varchar2(40),
tamanio NUMBER(8,2),
usuario REF TipoUsuario
);
Código SQL:
Ver originalCREATE OR REPLACE TYPE tabla_anidada AS TABLE OF TipoTabla;
Código SQL:
Ver originalCREATE OR REPLACE TYPE TipoTablespace AS object (
tablespace varchar2(40),
tablas tabla_anidada,
member FUNCTION ObtenerTamanio RETURN NUMBER,
pragma restrict_references(ObtenerTamanio,WNDS)
);
La función del tipo "TipoTablespace" esta declarada correctamente. Aparte que no tiene nada que ver con mi duda.
Bueno...la pregunta es la siguiente. A traves de un simple "SELECT" estoy intentado sacar los datos del cursor de forma individual, pero no encuentro la manera. No puedo utilizar pl/sql.
este es mi select. Y tiene que ser asi, porque para el tablespace de pepe quiero sacar un usuario en concreto de las tablas que tiene el tablespace.
Código SQL:
Ver originalSELECT cursor(SELECT deref(tbs.usuario) FROM TABLE(ts.tablas) tbs)
FROM tablespaces ts WHERE ts.tablespace = 'pepe'
¿alguien sabría sacar un dato en concreto del cursor que tiene esta select sin pl/slq?
La consulta funciona perfectamente, pero como es logico me muestra todos los datos del cursor, y yo solo quiero uno condicionándolo con un where.
Un saludo y gracias de antemano ;)