Skip to content

Second work about data integrations using a distributed database. Pos-graduation #POSBD #Cefet

Notifications You must be signed in to change notification settings

cleitonfco/ddb_practice_two

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ESPECIALIZAÇÃO EM BANCO DE DADOS

DISCIPLINA: BANCO DE DADOS DISTRIBUÍDOS

Atividade Prática 02

1. Desenvolva uma interface web de consulta para as fontes de dados abaixo, que utilize a abordagem virtual para integração de esquemas, com a implementação de mediadores e adaptadores.

SGBD: MySQL

BD: empresa
Tabela: empregado
Campos
  matricula  Int   PK
  nome       Text  40
  CPF        Int
  salario    Real  (em R$)
  endereco   Text  60
  cidade     Text  20
  estado     Text  2
  fone_res   Text  10
  fone_cel   Text  10
  dia_nasc   Int
  mes_nasc   Int
  ano_nasc   Int
  sexo       Text  1

SGBD: PostgreSQL

BD: empresa
Tabela: funcionario
Campos:
  identificacao  Int
  nome           Text  40
  CPF            Text  11
  remuneracao    Real  (em US$)
  logradouro     Text  30
  numero         Int
  bairro         Text  20
  CEP            Int
  cidade         Text  30
  estado         Text  2
  telefone       Text  10
  data_nasc      Date
  sexo           Int

ARQUIVO: servidor.xml

Campos
  Registro
  Nome
  CPF
  Vencimento
  Logradouro
  Bairro
  CEP
  Cidade
  Estado
  Fone
  Tipo_Fone
  Nascimento
  Sexo

Exemplos de consulta:

  1. Relação dos empregados da empresa com os campos matrícula, nome e salário.

  2. Relação dos empregados que ganham mais de R$ 5.000,00.

  3. Relação dos empregados que moram no CEP 64055-120.

  4. Relação dos empregados que tem telefone celular.

Observações:

  1. Os campos matricula, identificacao e registro têm o mesmo significado.

  2. Os campos salario, remuneracao e vencimento têm o mesmo significado.

  3. Na tabela funcionario, o conteúdo do campo CPF tem formato 99999999999 (ex.: 67335519349).

  4. No arquivo servidor.xml, o conteúdo do campo CPF tem formato 999.999.999-99 (ex.: 673.355.193-49).

  5. Na tabela empregado, o conteúdo do campo endereco consiste no endereço completo, com logradouro, número, bairro e CEP (formato: 99999-999).

  6. No arquivo servidor.xml, o conteúdo do campo logradouro consiste no logradouro e número.

  7. Na tabela funcionario, o campo CEP está no formato 99999999 (ex.: 64055120).

  8. Na arquivo servidor.xml, o campo CEP está no formato 99999-999 (ex.: 64055-120).

  9. Nos campos que contém números de telefone, o formato é 9999999999 (ex.: 8632155222).

  10. No arquivo servidor.xml, o campo tipo-fone consiste no tipo de telefone (R=residencial; C=celular).

  11. Na tabela empregado, o domínio do campo sexo é (“M”, “F”).

  12. Na tabela funcionario, o domínio do campo sexo é (1, 2), sendo 1=Masculino e 2=Feminino.

  13. No arquivo servidor.xml, o domínio do campo sexo é (“Masculino”, “Feminino”).

Como Usar?

Faça uma cópia do código que está no repositório:

git clone git://github.com/cleitonfco/ddb_practice_two.git

Entre no diretório e crie uma aplicação rails chamada ‘app_client’

cd ddb_practice_two
rails app_client

Como já existem alguns arquivos do rails, é provável que apareça alguma mensagem pedindo que confirme a sobrescrita de arquivos. Pode dizer sim, neste caso.

Para começar a aplicação é necessário configurar os bancos de dados. No arquivo database-sample.yml tem um exemplo. Faça as alterações e salve o arquivo como database.yml

cd app_client
mv config/database-sample.yml config/database.yml

Agora é hora de criar os bancos e popular as bases.

MySql

rake db:create:mysql
rake db:migrate:mysql
rake db:populate:empregados

Postgres

rake db:create:postgres
rake db:migrate:postgres
rake db:populate:funcionarios

XML

rake db:populate:servidores

Autores

Cleiton Francisco

Charleno Pires

About

Second work about data integrations using a distributed database. Pos-graduation #POSBD #Cefet

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages