Tomaremos como ejemplo el objeto "direccionOBJ" que es una dirección postal:
CREATE OR REPLACE TYPE direccionOBJ as OBJECT
(
calle VARCHAR2(20),
ciudad VARCHAR2(20),
codProvincia CHAR(2),
cPostal CHAR(5)
);
Ahora creamos una tabla de empleado, que contiene al objeto direccion (de tipo direccionOBJ):
CREATE TABLE empleado
(
numEmpleado NUMBER(3),
nombre VARCHAR2(20),
direccion direccionOBJ
);
Vamos a crear ahora una fila para nuestra tabla de empleados:
INSERT INTO empleado VALUES
(139, 'Antonio', direccionOBJ('Calle Sierpes','Sevilla','41','41001'));
Crear una tabla a partir de un objeto Oracle
A continuación vamos a crear una tabla oracle con los objetos direccionOBJ y vamos a copiar todas las direcciones de nuestra tabla de empleados a ésta tabla:CREATE TABLE tabla_direcciones OF direccionOBJ;
Insertamos las direcciones:
INSERT INTO tabla_direcciones
SELECT e.direccion
FROM empleados e;
Así hemos transformado el objeto direccionesOBJ en una tabla que podemos consultar. Vamos a hacer un "select" de nuestra tabla:SELECT ciudad FROM tabla_direcciones
Ya ésta, así de simple... (o de difícil) ;)
Hola, Buen post. Tengo una consulta como haria en el caso de que quisiera insertar datos a una tabla a traves de un objeto. Es decir, tengo un objeto y una tabla construida con ese objeto asi como en el ejemplo. Lo que quiero es insertar los valores del objeto a una tabla normal que tiene sus mismos campos.
ResponderEliminarHola, como puedo crear la tabla con un objeto que tenga campos tipo table u otros objetos
ResponderEliminar