A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

PROJETO INTERDISCIPLINAR ‘DBERP’. Equipe de Desenvolvimento Banco de Dados  Adiel Silveira de Lemos  Ana Renata de Siqueira  Bruno Michael da Silva.

Apresentações semelhantes


Apresentação em tema: "PROJETO INTERDISCIPLINAR ‘DBERP’. Equipe de Desenvolvimento Banco de Dados  Adiel Silveira de Lemos  Ana Renata de Siqueira  Bruno Michael da Silva."— Transcrição da apresentação:

1 PROJETO INTERDISCIPLINAR ‘DBERP’

2 Equipe de Desenvolvimento Banco de Dados  Adiel Silveira de Lemos  Ana Renata de Siqueira  Bruno Michael da Silva Santos Sistemas da Informação  Odile Giordani

3 Trigramação TABELA → TBL TBL_CARGOS → CRG TBL_PRIVILEGIOS → PRI TBL_SETORES → SET TBL_SS → SSE TBL_FUNCIONARIOS → FUN TBL_SITUAÇÕES → SIT TBL_EQUIPAMENTOS → EQP TBL_OS → ORS TBL_FUN_EXECUTA_OS → FEX TBL_MANUTENCOES → MAN TBL_CONTATOS → CNT

4 Tabelas de Normalização TBL_PRI_CARGOS - Tabela de Privilégios Cargos, gerada pela relação entre as tabelas Privilégios e Cargos. TBL_SSE_EQP – Tabela Solicitação de Serviço Equipamentos, gerada pela relação entre as tabelas Solicitação de Serviço e Equipamentos. TBL_ORS_EQP – Tabela Ordem de Serviço Equipamento, gerada pela relação entre as tabelas Ordem de Serviço e Equipamentos. TBL_SITUACOES_SS – Tabela Situações Solicitação de Serviço, gerada pela relação entre as tabelas Situações e Solicitação de Serviço. TBL_SITUACOES_OS – Tabela Situações Ordem de Serviço, gerada pela relação entre as tabelas Situações e Ordem de Serviço. Obs. Essas tabelas foram geradas devido a cardinalidade (N,N)

5 Normalização Para garantir total integridade e conscistencia dos dados, todas as tabelas foram normalizadas de modo a estarem na Terceira Forma Normal (3NF), estando assim na segunda e na primeira forma normal também. Dessa forma não existem campos multi valorados e todos os campos da tabela dependem das respectivas chaves primárias.

6 Regras para remoção/atualização das FKs Visando garantir a integridade dos dados dentro do Banco foram estabelecidas algumas regras na modelagem, como: on delete no action – garante que se um campo for deletado em uma tabela, isso não acontecerá nas outras que possuem relação, garantindo assim que sejam mantidos históricos. on update on cascade – ao ser atualizado um campo na tabela principal, automaticamente serão atualizadas todas as tabelas que tem relação com ela. Efeito cascata.

7 DER

8 Modelo Lógico

9 Modelo Físico CREATE DATABASE DBERP; // CRIAÇÃO DO BANCO 'BDERP' USE DBERP; // SELECIONANDO O BANCO PARA COMEÇAR AS INSTRUÇÕES CREATE TABLE TBL_CARGOS ( CRG_COD INT UNSIGNED NOT NULL AUTO_INCREMENT, CRG_DESCRICACAO VARCHAR(45) NOT NULL, PRIMARY KEY (CRG_COD)); CREATE TABLE TBL_PRIVILEGIOS ( PRI_COD INT NOT NULL AUTO_INCREMENT, PRI_DESCRICAO VARCHAR(45) NOT NULL, PRIMARY KEY (PRI_COD)); CREATE TABLE TBL_SETORES ( SET_COD INT UNSIGNED NOT NULL AUTO_INCREMENT, SET_NOME VARCHAR(45) NOT NULL, PRIMARY KEY (SET_COD)); CREATE TABLE TBL_SS ( SSE_COD INT UNSIGNED NOT NULL AUTO_INCREMENT, SSE_DESCRICAO VARCHAR(45) NOT NULL, SSE_DATA_SOL DATE NOT NULL, FUN_MATRICULA_SOL INT UNSIGNED NOT NULL, PRIMARY KEY (SSE_COD), FOREIGN KEY (FUN_MATRICULA_SOL)REFERENCES TBL_FUNCIONARIOS (FUN_MATRICULA) ON DELETE NO ACTION ON UPDATE NO ACTION));

10 Script Inserção de Dados insert into tbl_cargos(crg_cod,crg_descricao) values (null,'Técnico Administrativo'); \\ inserção na tabela cargos insert into tbl_setores (set_cod,set_nome) values (null,'Execução'); \\ inserção na tabela setores insert into tbl_privilegios(pri_cod,pri_descricao) values (null,'Gerar SS,Consultar SS/OS,Programar OS'); \\ inserção na tabela privilégios insert into tbl_pri_cargos(crg_cod,pri_cod) values (7,2); \\ inserção na tabela privilégio cargos insert into tbl_funcionarios(fun_matricula,fun_nome,fun_email,set_cod,crg_cod) values(null, 'Paulo','paulo@yahoo.com.br',4,10);'paulo@yahoo.com.br \\ inserção na tabela funcionários

11 // Nome dos funcionarios que trabalham no setor de código 5 select f.fun_nome from tbl_funcionarios f inner join tbl_setores s on s.set_cod=f.set_cod where s.set_cod=5; // Descrição da SS que está pendente select s.sse_descricao,s.sse_cod from tbl_ss s inner join tbl_situacoes_ss sss on sss.sse_cod=s.sse_cod inner join tbl_situacoes si on si.sit_cod=sss.sit_cod where sit_pendente='S'; Script das Selects

12 // Nome do funcionário que executou a OS 1 select f.fun_nome,c.crg_descricao from tbl_funcionarios f inner join tbl_ss ss on ss.fun_matricula_sol=f.fun_matricula inner join tbl_cargos c on c.crg_cod=f.crg_cod where ss.sse_cod=1; // Nome do setor(s) que possuem o equipamento Arcondicionado select set_nome from tbl_setores s inner join tbl_equipamentos e on e.set_cod=s.set_cod where eqp_descricao='Arcondicionado'; // Descrição e data dos equipamentos que já sofreram manutenções select eqp_descricao,man_data from tbl_equipamentos e inner join tbl_manutencoes m on m.eqp_cod=e.eqp_cod;

13 // Nome dos funcionários e descrição dos privilégios do setor 3(Programação de Manutenção) select fun_nome,pri_descricao from tbl_funcionarios f inner join tbl_cargos c on c.crg_cod=f.crg_cod inner join tbl_pri_cargos pc on pc.crg_cod=c.crg_cod inner join tbl_privilegios p on p.pri_cod=pc.pri_cod where set_cod=3; //Descrição e data dos equipamentos que já sofreram manutenções select eqp_descricao,man_data from tbl_equipamentos e inner join tbl_manutencoes m on m.eqp_cod=e.eqp_cod; // Código e nome do setor do funcionário João select s.set_cod,s.set_nome from tbl_setores s inner join tbl_funcionarios f on f.set_cod=s.set_cod where f.fun_nome='Joao';

14 // Datas(Criação,início previsto,início real,finalização real) da OS de número 1 select os.ors_data_criacao,os.ors_data_prev_ini,fex_data_real_ini,fex_data_real_fin from tbl_fun_executa_os fe inner join tbl_os os on os.ors_cod=fe.ors_cod where os.ors_cod=1; // Nome e descrição do funcionario que aprovou a OS de número 1 select fun_nome,pri_descricao from tbl_funcionarios f inner join tbl_os os on os.fun_matricula_apr=f.fun_matricula inner join tbl_cargos c on c.crg_cod=f.crg_cod inner join tbl_pri_cargos pc on pc.crg_cod=c.crg_cod inner join tbl_privilegios p on p.pri_cod=pc.pri_cod where os.ors_cod=1; // Ramal,Nome e setor do funcionario que solicitou a SS de número 2 select cnt_ramal,fun_nome,set_nome from tbl_funcionarios f inner join tbl_setores s on s.set_cod=f.set_cod inner join tbl_contatos c on c.fun_matricula=f.fun_matricula inner join tbl_ss ss on ss.fun_matricula_sol=f.fun_matricula where ss.sse_cod=2;

15 Dicionário de Dados

16 Ferramentas utilizadas para o desenvolvimento Foram utilizadas as seguintes ferramentas para o desenvolvimento do projeto:  brModelo – para o desenvolvimento do DER  MySQL Workbench 5.1 OSS – para modelagem de dados, geração do modelo lógico e importação de script do modelo fisico.  MySQL – SGBD escolhido para a implantação da base de dados.  MS Word – para Documentação e Scripts.


Carregar ppt "PROJETO INTERDISCIPLINAR ‘DBERP’. Equipe de Desenvolvimento Banco de Dados  Adiel Silveira de Lemos  Ana Renata de Siqueira  Bruno Michael da Silva."

Apresentações semelhantes


Anúncios Google