Esquema Relacional Aplicando um Modelo de Objetos para Dados Relacionais
Modelo de Objetos
Definindo os Tipos
CREATE OR REPLACE VIEW CLIENTES OF CLIENTE WITH OBJECT IDENTIFIER(codigo) AS SELECT C.ccodigo, C.cnome, C.endereco(C.crua,C.ccidade,C.cestado, C.ccep), Listafone(cfone1, cfone2, cfone3) FROM CLIENTES_REL C; Definindo as Visões
CREATE OR REPLACE VIEW PRODUTOS OF PRODUTO WITH OBJECT IDENTIFIER(codigo) AS SELECT * FROM PRODUTO_REL ; Definindo as Visões
Comando de Inserção na Visão Pedidos INSERT INTO PEDIDOS VALUES ( 1001, ( SELECT REF(C) FROM CLIENTES C WHERE C.Codigo = 1), SYSDATE, '10-MAY-1997', FONELISTA(), NULL );
Trigger de Inserção em Pedidos
Comando de Remoção na Visão Pedidos DELETE FROM PEDIDOS P WHERE P.CODIGO = “01” Trigger de Remoção em Pedidos
Comando de Inserção na NESTED TABLE ListaItens da Visão Pedidos INSERT INTO TABLE (SELECT P.LISTAITENS FROM PEDIDOS P WHERE P.CODIGO = 1001 ) SELECT 01, REF(P1), 12, 0 FROM PRODUTOS P1 WHERE P1.CODIGO = 1534;
Trigger de Inserção na NESTED TABLE ListaItens da Visão Pedidos
Trigger de Remoção na NESTED TABLE ListaItens da Visão Pedidos
Inserção na Nested Table Lista_proj_v da Visão EMPs_v INSERT INTO TABLE( SELECT LISTA_PROJ_V FROM EMPS_V E WHERE E.#EMP = “01”) VALUES(proj_v(12, ‘ARIDA’, ‘ ’));