1. Objetivo
1) Integrar os Bancos de Dados Setoriais (BDSs) ou Subject Databases em dois
Bancos de Dados Corporativos (BDCs) ou Corporate Databases de duas empresas ou
corporações, visando melhorar suas eficiências corporativas e reduzir seus desperdícios de
recursos; e
2) Implementar e implantar a Integração dos Bancos de Dados Setoriais (BDSs
ou Subject Databases) em dois Banco de Dados Corporativo (BDC) ou Corporate
Database de duas empresas ou corporações fictícias, visando testar o aumento de suas
funcionalidades com as suas integrações debaixo do SGBD ORACLE 10g Spatial
previamente escolhido, e verificar.
2. Procedimento
As tarefas exigidas aos integradores foi desenvolvida em conjunto, e inicialmente separada em três diferentes grupos. O grupo de Transporte ao qual pertence o autor trabalhou em conjunto com a senhorita Simone, integradora do setor de RH. O resultado final, já integrado com os outros grupos está disponível no link abaixo:
Integração - Coorporação
Query 1
* MOSTRAR INFORMAÇÃO DE TODAS AS EMBARCACOES
SELECT * FROM EMBARCACAO;
| EMB_CODIGO |
TIP_CODIGO |
PPT_CODIGO |
EMB_NOME |
| 1 |
2 |
3 |
Poseidon |
| 2 |
3 |
2 |
Titanic |
| 3 |
2 |
2 |
Ana Luzia |
Query 2
* MOSTRAR O TIPO DA EMBARCACAO 'Poseidon'
SELECT * FROM EMBARCACAO, TIPO WHERE
EMBARCACAO.tip_codigo = TIPO.tip_codigo AND
EMBARCACAO.emb_nome = 'Poseidon';
| EMB_CODIGO |
TIP_CODIGO |
PPT_CODIGO |
EMB_NOME |
TIP_CODIGO |
TIP_NOME |
TIP_CAPACIDADE |
| 1 |
2 |
3 |
Poseidon |
2 |
Barco |
10000 |
Query 3
* ANULADA APÓS CONVERSA COM O PROFESSOR.
Query 4
* DISTANCIA DOS PORTOS AO CRUZAMENTO DO EQUADOR COM GREENWICH ( lat 0, long 0 )
SELECT PORTO.*, SDO_GEOM.SDO_DISTANCE(PORTO.por_posicao,MDSYS.SDO_GEOMETRY(2001,NULL,MDSYS.SDO_POINT_TYPE(0,0,0),NULL,NULL) ,1) AS distancia_zero FROM PORTO
| POR_CODIGO |
POR_NOME |
POR_ENDERECO |
POR_POSICAO(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES) |
DISTANCIA_ZERO |
| 2 |
Porto de Japioca |
Av JK, 3000 |
SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-5, -30.1, 50), NULL, NULL) |
30.5124565 |
| 1 |
Porto de Manaus |
Rua Santa Maria, 3 |
SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-2, -10.1, 50), NULL, NULL) |
10.2961158 |
| 3 |
Porto de Baiatuba |
Rd Madeireiros,200 |
SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(10, 20.1, 50), NULL, NULL) |
22.450167 |
Query 5
* CARGAS DA EMBARCACAO 3:
SELECT CARGA.* FROM CARGA,ATRACACAO,MOVIMENTO_CARGA WHERE
ATRACACAO.emb_codigo = 3 and
ATRACACAO.atr_codigo = MOVIMENTO_CARGA.atr_codigo and
MOVIMENTO_CARGA.car_codigo = CARGA.car_codigo and
MOVIMENTO_CARGA.mov_tipo = 'carga';
| CAR_CODIGO |
NAT_CODIGO |
PPT_CODIGO |
CAR_VOLUME |
CAR_PESO |
CAR_VALOR |
| 2 |
2 |
1 |
400 |
30000 |
300000 |
| 3 |
3 |
3 |
500 |
50000 |
400000 |
Query 6
* EMBARCACOES ATRACADAS QUE FORAM CARREGADAS no PORTO DE MANAUS
SELECT DISTINCT EMBARCACAO.*, ATRACACAO.atr_horario_entrada FROM EMBARCACAO, CARGA,MOVIMENTO_CARGA, ATRACACAO WHERE
PORTO.por_nome = 'Porto de Manaus' AND
ATRACACAO.por_codigo = PORTO.por_codigo AND
MOVIMENTO_CARGA.atr_codigo = ATRACACAO.codigo AND
ATRACACAO.emb_codigo = EMBARCACAO.emb_codigo;
| EMB_CODIGO |
TIP_CODIGO |
PPT_CODIGO |
EMB_NOME |
ATR_HORARIO_ENTRAD |
| 3 |
2 |
2 |
Ana Luzia |
25-MAY-07 |
| 2 |
3 |
2 |
Titanic |
17-MAY-07 |
Query 7
* PROPRIETARIOS CUJAS CARGAS FORAM CARREGADAS no PORTO DE MANAUS
SELECT PROPRIETARIO.* FROM PROPRIETARIO, CARGA, MOVIMENTO_CARGA, ATRACACAO,PORTO WHERE
PORTO.por_nome = 'Porto de Manaus' AND
ATRACACAO.por_codigo = PORTO.por_codigo AND
MOVIMENTO_CARGA.atr_codigo = ATRACACAO.atr_codigo AND
MOVIMENTO_CARGA.car_codigo = CARGA.car_codigo AND
PROPRIETARIO.ppt_codigo = CARGA.ppt_codigo;
| PPT_CODIGO |
PPT_NOME |
PPT_TIPO |
PPT_TELEFONE |
| 1 |
Joaquim Manuel |
fisica |
(12) 3947-0001 |
| 1 |
Joaquim Manuel |
fisica |
(12) 3947-0001 |
| 3 |
MADEIRA SA |
juridica |
(12) 3947-0003 |
Query 8
* DISTANCIA ENTRE ORIGEM E DESTINO DA CARGA COM CODIGO 1
SELECT CARGA.car_codigo, SDO_GEOM.SDO_DISTANCE(
(SELECT PORTO.por_posicao FROM ATRACACAO,MOVIMENTO_CARGA, PORTO WHERE
ATRACACAO.atr_codigo = MOVIMENTO_CARGA.atr_codigo and
MOVIMENTO_CARGA.mov_tipo = 'carga' and
MOVIMENTO_CARGA.car_codigo = CARGA.car_codigo and
PORTO.por_codigo = ATRACACAO.por_codigo)
,
(SELECT PORTO.por_posicao FROM ATRACACAO,MOVIMENTO_CARGA, PORTO WHERE
ATRACACAO.atr_codigo = MOVIMENTO_CARGA.atr_codigo and
MOVIMENTO_CARGA.mov_tipo = 'descarga' and
MOVIMENTO_CARGA.car_codigo = CARGA.car_codigo and
PORTO.por_codigo = ATRACACAO.por_codigo)
,1) AS distancia FROM CARGA WHERE CARGA.car_codigo = '1'
| CAR_CODIGO |
DISTANCIA |
| 1 |
20.2237484 |
Query 9
Selecionar as inscrições dos funcionários do porto de Manaus
SELECT PORTO.por_nome , INSCRICAO.*FROM INSCRICAO, EMPREGADO_PORTO,PORTO
WHERE PORTO.por_nome = 'Porto de Manaus' AND
EMPREGADO_PORTO.por_codigo= PORTO.por_codigo AND
EMPREGADO_PORTO.pro_cpf = INSCRICAO.pro_cpf
| POR_NOME |
INS_QUALIFICADO |
INS_REALIZADO |
AGE_CODIGO |
PRO_CPF |
| Porto de Manaus |
1 |
0 |
1 |
00000000001 |
Query 10
Achar as bácias já percorridas por cada tripulante.
SELECT DISTINCT PROFISSIONAL.pro_nome, EMBARCACAO.emb_nome, BACIA.bac_nome
FROM EMBARCACAO, EMPREGADO_EMBARCACAO, PROFISSIONAL, ATRACACAO, EXTREMO_ROTA, ROTA, DESCRICAO_ROTA, TRECHO, RIO, SUB_BACIA, BACIA
WHERE
EMBARCACAO.emb_codigo = EMPREGADO_EMBARCACAO.emb_codigo AND
EMPREGADO_EMBARCACAO.pro_cpf = PROFISSIONAL.pro_cpf AND
ATRACACAO.emb_codigo = EMBARCACAO.emb_codigo AND
EXTREMO_ROTA.atr_codigo = ATRACACAO.atr_codigo AND
ROTA.rot_codigo = EXTREMO_ROTA.ext_codigo AND
DESCRICAO_ROTA.rot_codigo = ROTA.rot_codigo AND
DESCRICAO_ROTA.tre_codigo = TRECHO.tre_codigo AND
TRECHO.rio_codigo = RIO.rio_codigo AND
RIO.sub_cod = SUB_BACIA.sub_cod AND
SUB_BACIA.bac_cod = BACIA.bac_cod
| PRO_NOME |
EMB_NOME |
BAC_NOME |
| Augusto de Souza |
Titanic |
Amazônica |
| Ana Santos |
Titanic |
Amazônica |
Query 11
Distancia entre a residencia entre os funcionarios de portos e seu local de trabalho.
SELECT PROFISSIONAL.pro_nome, PORTO.por_nome, SDO_GEOM.SDO_DISTANCE(PORTO.por_posicao,PONTO.pon_geo ,1) AS distancia
FROM PORTO, EMPREGADO_PORTO, PROFISSIONAL, PONTO
WHERE
PORTO.por_codigo = EMPREGADO_PORTO.por_codigo AND
EMPREGADO_PORTO.pro_cpf = PROFISSIONAL.pro_cpf AND
PROFISSIONAL.pon_id = PONTO.pon_id
| PRO_NOME |
POR_NOME |
DISTANCIA |
| José da Silva |
Porto de Manaus |
62.1998794 |
| Ana Santos |
Porto de Japioca |
90.4606815 |
| Júlio Soares |
Porto de Baiatuba |
40.4973444 |
| Augusto de Souza |
Porto de Manaus |
61.0203777 |
 |
3. Conclusão
Concluimos que foi feita com sucesso a integração dos bancos de dados corporativos aumentando assim a eficiência e a redução do custo de recursos do setor, de forma com que somente os atributos irrelevantes perdessem sua identidade após autorização do diretor da empresa( Prof. Cunha).
Notou-se também uma intensa e construtiva interação entre os vários integrantes com mesma reponsabilidade dos vários grupos responsáveis,tornando um sucesso a execução da integração corporativa.
|