En muchas ocasiones es necesario la creación de un TYPE para luego utilizarlo
como un atributo en alguna tabla, para la creación de un TYPE se debe utilizar
el siguiente código:
>>create or replace type TELEFONO as object (
>> CodArea NUMBER(10),
>> Numero NUMBER(10)
>>);
>>create or replace type TELEFONOS as VARRAY(16) of TELEFONO;
En el código anterior creamos el TYPE TELEFONO, cuyos atributos son CodArea y
Numero, y creamos un arrecho llamado TELEFONOS al cual le asignamos el TYPE TELEFONO
ahora veremos como agregarlo como atributo a una tabla:
>>create table BAR(
>> IdBar NUMBER(4) NOT NULL,
>> IdLugar NUMBER(4) NOT NULL,
>> Nombre VARCHAR2(50) NOT NULL,
>> Tlf TELEFONOS NOT NULL,
>> Direccion VARCHAR2(100) NOT NULL,
>> constraint PK_BAR primary key (IdBar)
>>);
En el código anterior creamos la tabla "BAR" cuyo atributo Telf. corresponde a un
arreglo del tipo TELEFONO.
Muchos se preguntaran, como insertar una nueva fila en la tabla BAR,
>>INSERT INTO BAR VALUES (IDBAR.NEXTVAL,2,'Bar do Chico',TELEFONOS(TELEFONO(092,3232161)),'Av. Leonardo Malcher, Rua Luiz Antony');
Ahora para eliminar los types creados podemos utilizar:
>>drop type TELEFONOS;
>>drop type TELEFONO;