Borrar una fila de una tabla anidada
Buen día, necesito de tu ayuda.
supongamos que tengo lo siguiente:
Objeto O_Persona (nombre, edad)
Objeto O_Cliente (O_Persona, Domicilio)
creo una tabla de objeto:
Create type T_Cliente AS table of O_Cliente;
Por ultimo creo mi tabla donde utilizaré T_Cliente como tabla anidada
Create table pedido(
id_ped number,
cliente T_Cliente,
descripción varchar)
nested table cliente store as unit_tab_cliente;
Después de agregar varios clientes al pedido 123 (por ejemplo) deseo borrar uno o algunos, pero deseo borrarlos por su nombre. Supongamos que O_persona no es un objeto sino un varchar donde solo se guarda el nombre. Lo borraría así:
Delete from table
(select cliente from pedido where id_ped=123)
where persona='juan perez';
El problema es que en mi caso persona es un objeto que guarda nombre y edad, no se como acceder hasta nombre para que me sirva de identificador en mi delete
Espero haberme dado a entender, de antemano gracias!
supongamos que tengo lo siguiente:
Objeto O_Persona (nombre, edad)
Objeto O_Cliente (O_Persona, Domicilio)
creo una tabla de objeto:
Create type T_Cliente AS table of O_Cliente;
Por ultimo creo mi tabla donde utilizaré T_Cliente como tabla anidada
Create table pedido(
id_ped number,
cliente T_Cliente,
descripción varchar)
nested table cliente store as unit_tab_cliente;
Después de agregar varios clientes al pedido 123 (por ejemplo) deseo borrar uno o algunos, pero deseo borrarlos por su nombre. Supongamos que O_persona no es un objeto sino un varchar donde solo se guarda el nombre. Lo borraría así:
Delete from table
(select cliente from pedido where id_ped=123)
where persona='juan perez';
El problema es que en mi caso persona es un objeto que guarda nombre y edad, no se como acceder hasta nombre para que me sirva de identificador en mi delete
Espero haberme dado a entender, de antemano gracias!