Listex 5 v2 consultas

23 

Loading....

Loading....

Loading....

Loading....

Loading....

Texto

(1)

MINISTÉRIO DA AERONÁUTICA

DEPARTAMENTO DE PESQUISAS E DESENVOLVIMENTO CENTRO TÉCNICO AEROESPACIAL

Instituto Tecnológico de Aeronáutica

Programa de Pós-Graduação em

Engenharia Eletrônica e Computação - Informática

CE-240

Projeto de Sistemas de Bancos de Dados

Professor Doutor Adilson Marques da Cunha

Listex 5

Anexo V – Consultas Revisadas e Consultas do Banco de Dados Setorial

Roberto Mellado Pepato Robson Luis Monteiro Junior Eduardo Mena Barreto

(2)

Índice

Anexo V – Consultas Revisadas e Consultas do Banco de Dados Setorial ... 3 Aplicativo de dados da ILUmincação do Departamento de Polícia (ABD-ILU-PO) ... 3 Aplicativo de dados dos EQUipamentos do Departamento de Polícia (ABD-EQU-PO)7 Criação de 4 consultas em linguagem estruturada de consultas para o Banco de Dados Setorial da Polícia. ... 11

(3)

Anexo V – Consultas Revisadas e Consultas do Banco de Dados

Setorial

O processo de integração e normalização se preocupou em garantir que as consultas anteriormente isoladas nos aplicativos de dados não sofresse alterações bruscas visando manter a consistência e integridade dos dados. Para isso foram executadas verificações nas consultas dos aplicativos de banco de dados dos integrantes do grupo:

Aplicativo de dados da ILUmincação do Departamento de Polícia

(ABD-ILU-PO)

Consulta 1 - Consulta envolvendo uma relação e ao menos um comando Select e um comando Project (ou equivalentes).

Consulta em linguagem natual: Recuperar o nome do corredor com metragem maior que 15 metros.

Consulta em linguagem estruturada de consultas

SELECT COR.COR_IDENTIFICACAO FROM CORREDOR COR WHERE COR.COR_METRAGEM > 15;

(4)

Consulta 2 - Consultas envolvendo duas relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Recuperar a voltagem de todos os equipamentos do tipo alarme sonoro.

Consulta em linguagem estruturada de consultas

SELECT EQU.EQP_TENSAO_DE_OPERACAO FROM EQUIPAMENTO EQU, TIPOEQUIPAMENTO TEQ WHERE TEQ.TEQ_DESCRICAO = 'Alarme Sonoro' AND EQU.TEQ_CODIGO = TEQ.TEQ_CODIGO;

Foram necessárias apenas alteração no nome dos atributos que foram substituídos no momento da integração, como EQU.EQP_TENSAO_DE_OPERACAO que anteriormente era EQU.VOLTAGEM, TEQ.TEQ_DESCRICAO que anteriormente era TEQ.TEQ_IDENTIFICACAO, TEQ.TEQ_CODIGO que anteriormente era TEQ.TEQ_IDENTIFICADOR e EQU.TEQ_CODIGO que anteriormente era EQU.TEQ_IDENTIFICADOR. Porem a estrutura das tabelas foi mantido e a integridade dos dados também.

(5)

Consulta 3 - Consultas envolvendo três relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Recuperar voltagem das tomadas e abreviações do tipo de todos os equipamentos do tipo alarme perímetro que estejam conectados a uma tomada com o padrão ABNT.

Consulta em linguagem estruturada de consultas

SELECT TOM.TOM_VOLTAGEM, TEQ.TEQ_ABREVIACAO FROM EQUIPAMENTO EQU, TIPOEQUIPAMENTO TEQ, TOMADA TOM WHERE TEQ.TEQ_DESCRICAO = 'Alarme Perimetro' AND EQU.TEQ_CODIGO = TEQ.TEQ_CODIGO AND EQU.TOM_IDENTIFICADOR = TOM.TOM_IDENTIFICADOR AND TOM.TOM_NORMA_ABNT = 1;

Foram necessárias apenas alteração no nome dos atributos que foram substituídos no momento da integração, como TEQ.TEQ_CODIGO que anteriormente era TEQ.TEQ_IDENTIFICADOR e EQU.TEQ_CODIGO que anteriormente era EQU.TEQ_IDENTIFICADOR. Porem a estrutura das tabelas foi mantido e a integridade dos dados também.

(6)

Consulta 4 - Consulta georreferenciada envolvendo pelo menos duas relações e um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Recuperar a tipo do equipamento e voltagem de todos os equipamentos do tipo alarme perímetro que estejam entre a área X: 23.133117332, Y: -45,981326587 e X: -45,749762702 e Y: -23,267456262.

Consulta em linguagem estruturada de consultas

SELECT TEQ.TEQ_DESCRICAO , EQU.EQP_TENSAO_DE_OPERACAO FROM EQUIPAMENTO EQU, TIPOEQUIPAMENTO TEQ, TOMADA TOM, MEDIDOR MDD WHERE TEQ.TEQ_DESCRICAO = 'Alarme Perimetro' AND EQU.TEQ_CODIGO = TEQ.TEQ_CODIGO AND EQU.TOM_IDENTIFICADOR = TOM.TOM_IDENTIFICADOR AND MDD.MDD_CODIGO = EQU.MDD_CODIGO AND

SDO_INSIDE(MDD.MDD_LOCAL_INSTALACAO, SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 3), SDO_ORDINATE_ARRAY(-18.0000, -15.0000, -25.000, -45.886))) = 'TRUE';

Nesta consulta, foi necessária a adição de mais um relacionamento, pois anteriormente a localização geográfica era armazenada em um equipamento e agora com a normalização e integração, a localização foi mudada para medidor. Porem a estrutura das tabelas foi mantido e

(7)

a integridade dos dados também, também. Foram necessárias apenas alteração no nome dos atributos que foram substituídos no momento da integração, como TEQ.TEQ_CODIGO que anteriormente era TEQ.TEQ_IDENTIFICADOR, EQU.TEQ_CODIGO que anteriormente era EQU.TEQ_IDENTIFICADOR, EQU.EQP_TENSAO_DE_OPERACAO que anteriormente era EQU.VOLTAGEM e TEQ.TEQ_DESCRICAO que anteriormente era TEQ.TEQ_IDENTIFICACAO.

Aplicativo de dados dos EQUipamentos do Departamento de Polícia (ABD-EQU-PO)

Consulta 1 - Consulta envolvendo uma relação e ao menos um comando Select e um comando Project (ou equivalentes).

Consulta em linguagem natual: Encontre o nome do fabricante de código 3.

Consulta em linguagem estruturada de consultas

SELECT Fab_nome FROM Fabricante WHERE Fab_codigo = 3;

(8)

Consulta 2 - Consultas envolvendo duas relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Encontre a descrição do equipamento e a descrição do estado de operação do equipamento de código 3.

Consulta em linguagem estruturada de consultas

SELECT Equipamento.Eqp_descricao, EstadoOperacao.Eop_descricao FROM Equipamento, EstadoOperacao WHERE Equipamento.Eqp_codigo = 3 AND Equipamento.Eop_codigo = EstadoOperacao.Eop_codigo;

(9)

Consulta 3 - Consultas envolvendo três relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Encontre a tensão de operação do equipamento, o nome do fabricante do equipamento e a tensão de rede do medidor do equipamento de código 5, fabricante de código 1 e Tipo de Equipamento de código 3.

Consulta em linguagem estruturada de consultas

SELECT Equipamento.Eqp_tensao_de_operacao, Fabricante.Fab_nome, Medicao.Mdc_tensao_de_rede FROM Equipamento, Fabricante, Medidor, Medicao WHERE Equipamento.Fab_codigo = Fabricante_.Fab_codigo AND Equipamento.Mdd_codigo = Medidor.Mdd_codigo AND Equipamento.Eqp_codigo = 5 AND Equipamento.Fab_codigo = 1 AND Equipamento.Teq_codigo = 3 AND Medicao.Mdd_codigo = Medidor.Mdd_codigo AND rownum <= 1 ORDER BY Medicao.Mdc_data_ocorrencia DESC

Foram necessárias alterações na estrutura da consulta, pois o campo de tensão da rede da entidade medidor foi transferido para entidade de medição, o que causou a alteração na consulta, mas a estrutura e consistência dos dados foram mantida.

(10)

Consulta 4 - Consulta georreferenciada envolvendo pelo menos duas relações e um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Encontre a descrição do medidor e a descrição do tipo de equipamento de todos os equipamentos conectados aos medidores instalados no polígono de delimitação virtual de área de interesse da cidade de São José dos Campos.

Consulta em linguagem estruturada de consultas

SELECT DISTINCT Medidor.Mdd_descricao, Teq.descricao FROM Medidor, Equipamento, TipoEquipamento WHERE SDO_INSIDE(MEDIDOR.MDD_LOCAL_INSTALACAO,

SDO_GEOMETRY(2003,NULL, NULL,SDO_ELEM_INFO_ARRAY(1, 1003, 3), SDO_ORDINATE_ARRAY(-18.0000, -15.0000, -25.000, -45.886))) = 'TRUE' AND Medidor.Mdd_codigo = Equipamento.Mdd_codigo AND Equipamento.Teq_codigo = TipoEquipamento.Teq_codigo;

(11)

Aplicativo de dados da ADMinistração do Departamento de Polícia (ABD-ADM-PO) Consulta 1 - Consulta envolvendo uma relação e ao menos um comando Select e um comando Project (ou equivalentes).

Consulta em linguagem natual: Listar o tipo de equipamento de código 4:

Consulta em linguagem estruturada de consultas

SELECT Equipamento.eqp_modelo FROM equipamento WHERE Equipamento.eqp_codigo = 4

O campo que representava o tipo do modelo foi renomeado para modelo. A tabela passou pela técnica da trigramação.

(12)

Consulta 2 - Consultas envolvendo duas relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Listar o nome do fabricante do equipamento de código 1:

Consulta em linguagem estruturada de consultas SELECT Fabricante.fab_nome from

Equipamento, Fabricante

WHERE Equipamento.Eqp_Codigo = 1

AND Equipamento.Fab_Codigo = Fabricante.Fab_Codigo

(13)

Consulta 3 - Consultas envolvendo três relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Listar o nome e o telefone do fabricante do equipamento da sala3

Consulta em linguagem estruturada de consultas

SELECT DISTINCT(fabricante.fab_nome) ,fabricante.fab_telefone FROM Equipamento, Fabricante, Tomada, Corredor, Local_

WHERE Local_.Loc_Identificacao='Sala 3'

AND Equipamento.Eqp_Codigo = Tomada.Tom_Identificador AND Fabricante.Fab_Codigo = Equipamento.Eqp_Codigo

Foram necessárias alterações na estrutura da consulta, pois o campo da identificação do local foi mudado para tabela local, quando a tabela equipamento foi normalizada.

(14)

Consulta 4 - Consulta georreferenciada envolvendo pelo menos duas relações e um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natural: Listar a posição geográfica do medidor associado a 8 Delegacia de Policia

Consulta em linguagem estruturada de consultas

SELECT LOC.X, LOC.Y

FROM DEPARTAMENTO_POLICIA,

TABLE(SDO_UTIL.GETVERTICES(DEPARTAMENTO_POLICIA.DPP_LOCALIDADE )) LOC WHERE DEPARTAMENTO_POLICIA.DPP_DESCRICAO = '8 Delegacia de Policia' AND ROWNUM < 2

(15)

Aplicativo de dados da Unidade de Policía Pacificadora do Departamento de Polícia (ABD-UPP-PO)

Consulta 1 - Consulta envolvendo uma relação e ao menos um comando Select e um comando Project (ou equivalentes).

Consulta em linguagem natual: Listar o nome do monitoramento com consumo crítico igual a 500

Consulta em linguagem estruturada de consultas SELECT MEDIDOR.MDD_DESCRICAO

FROM MEDICAO, MEDIDOR

WHERE MEDICAO.MDC_DEMANDA_TOTAL = 500

AND MEDIDOR.MDD_CODIGO = MEDICAO.MDD_CODIGO

(16)

Consulta 2 - Consultas envolvendo duas relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Listar o nome do local onde o consumo ultrapasse o limite critico.

(17)

A tabela passou pela técnica da trigramação. A essência da consulta não foi modificada.

Consulta 3 - Consultas envolvendo três relações e ao menos um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natual: Listar o valor do consumo no dia 11052011 as 1135 da sala 2 da PO_UPP do ALEMAO.

Consulta em linguagem estruturada de consultas:

Select SUM(MEDICAO.MDC_DEMANDA_TOTAL) DEMANDA_TOTAL, MEDICAO.MDC_DATA_OCORRENCIA

From MEDIDOR, MEDICAO, DEPARTAMENTO_POLICIA, LOCAL_

WHERE DEPARTAMENTO_POLICIA.DPP_UNIDADE_PARTICIPANTE = 'Alemao' AND LOCAL_.DPP_CODIGO = DEPARTAMENTO_POLICIA.DPP_CODIGO GROUP BY MEDICAO.MDC_DATA_OCORRENCIA

(18)

Foram necessárias alterações na estrutura da consulta, pois o campo da identificação do local foi mudado para tabela local, MONITORAR deixou de existir.

Consulta 4 - Consulta georreferenciada envolvendo pelo menos duas relações e um comando Select, um comando Project e um comando Join (ou equivalentes).

Consulta em linguagem natural: Listar a posição geográfica dos medidor a delegacia de policia do Alemão.

Consulta em linguagem estruturada de consultas

Select DISTINCT DEPARTAMENTO_POLICIA.DPP_DESCRICAO, LOC.X, LOC.Y

From MEDIDOR, MEDICAO, DEPARTAMENTO_POLICIA,

TABLE(SDO_UTIL.GETVERTICES(DEPARTAMENTO_POLICIA.DPP_LOCALIDADE )) LOC

WHERE SDO_INSIDE(MEDIDOR.MDD_LOCAL_INSTALACAO,

SDO_GEOMETRY(2003,NULL, NULL,SDO_ELEM_INFO_ARRAY(1, 1003, 3),

SDO_ORDINATE_ARRAY(-18.0000, -15.0000, -25.000, -45.886))) = 'TRUE' AND ROWNUM < 2

(19)

Criação de 4 consultas em linguagem estruturada de consultas para o

Banco de Dados Setorial da Polícia.

Consulta 1 - Obter a descrição do departamento de polícia e a identificação do local onde se encontra instalado o equipamento de código 3

SELECT DEPARTAMENTO_POLICIA.Dpp_descricao, LOCAL_.Loc_identificacao

FROM EQUIPAMENTO, TOMADA, CORREDOR, LOCAL_, DEPARTAMENTO_POLICIA WHERE EQUIPAMENTO.Eqp_codigo = 3 AND EQUIPAMENTO.TOM_IDENTIFICADOR = TOMADA.TOM_IDENTIFICADOR AND TOMADA.COR_IDENTIFICADOR =

CORREDOR.COR_IDENTIFICADOR AND CORREDOR.LOC_IDENTIFICADOR = LOCAL_.LOC_IDENTIFICADOR AND LOCAL_.DPP_CODIGO =

(20)

Consulta 2 - Obter a tensao de operação do equipamento, o modelo do equipamento, o local de instalação do equipamento e o nome de seu fabricante, para todos os equipamentos conectados à circuitos aéreos

SELECT EQUIPAMENTO.EQP_TENSAO_DE_OPERACAO, EQUIPAMENTO.EQP_MODELO, LOCAL_.LOC_IDENTIFICACAO, FABRICANTE.FAB_NOME FROM EQUIPAMENTO,

TOMADA, CORREDOR, LOCAL_, FABRICANTE, MEDIDOR, CIRCUITO WHERE

CIRCUITO_.CCT_TIPO = 'Aéreo' AND MEDIDOR.CCT_CODIGO = CIRCUITO.CCT_CODIGO AND EQUIPAMENTO.MDD_CODIGO = MEDIDOR.MDD_CODIGO AND

FABRICANTE.FAB_CODIGO = EQUIPAMENTO.FAB_CODIGO AND

EQUIPAMENTO.TOM_IDENTIFICADOR = TOMADA.TOM_IDENTIFICADOR AND CORREDOR.COR_IDENTIFICADOR = TOMADA.COR_IDENTIFICADOR AND LOCAL_.LOC_IDENTIFICADOR = CORREDOR.LOC_IDENTIFICADOR;

(21)

Consulta 3 - Obter a descrição do tipo de equipamento, o identificador da tomada ao qual o equipamento está conectado, a descrição do equipamento e a última data de medição realizada neste equipamento

SELECT TIPOEQUIPAMENTO.TEQ_DESCRICAO, TOMADA.TOM_IDENTIFICADOR, EQUIPAMENTO.EQP_DESCICAO, (SELECT MAX(MEDICAO.MDC_DATA_OCORRENCIA) FROM MEDICAO WHERE MEDICAO.MDD_CODIGO = MEDIDOR.MDD_CODIGO) AS DATA_MEDICAO FROM EQUIPAMENTO, TIPOEQUIPAMENTO, TOMADA, MEDICAO, MEDIDOR WHERE EQUIPAMENTO.TOM_IDENTIFICADOR =

TOMADA.TOM_IDENTIFICADOR AND EQUIPAMENTO.TEQ_CODIGO = TIPOEQUIPAMENTO.TEQ_CODIGO AND EQUIPAMENTO.MDD_CODIGO =

(22)

Consulta 4 - Obter a descricao do Medidor e a Descrição do Departamento de polícia dos medidores que estiverem dentro da área do departamento de polícia

SELECT MEDIDOR.MDD_DESCRICAO, DEPARTAMENTO_POLICIA.DPP_DESCRICAO

FROM MEDIDOR, DEPARTAMENTO_POLICIA WHERE

SDO_INSIDE(MEDIDOR.MDD_LOCAL_INSTALACAO, DEPARTAMENTO_POLICIA.DPP_LOCALIDADE) = 'TRUE'

(23)

Imagem

Referências

temas relacionados :