Baixe o app para aproveitar ainda mais
Prévia do material em texto
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 8 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord Objetivos: • Aprender a transformar o modelo conceitual para o modelo lógico relacional para: • Relacionamentos 1:1 • Relacionamentos 1:n • Relacionamentos n:m Convertendo o Diagrama ER para Tabelas Relacionais • Regras simples, baseadas na cardinalidade dos relacionamentos, são aplicadas para converter entidades e relacionamentos em tabelas relacionais. Para cardinalidade 1:1 • Caso 1: Para cardinalidade 1:1 • Caso 1: PEDIDO (NºdoPedido, DataEmissão, DatadeEntrega, Produtos Comprados, Numero, DataDeEmissão, Valor_Total) PEDIDO (NºdoPedido, DataEmissão, DatadeEntrega, Produtos Comprados, Numero, DataDeEmissão, Valor_Total) Nºdo Pedido Data Emissão Datade Entrega Produtos Comprados Numero DataDe Emissão Valor Total Pedido Nota Fiscal Para cardinalidade 1:1 • Caso 2: ALUNO TESEPRODUZ (1,1) (0,1) Matricula Nome e-mail endereço Titulo Resumo Ano Para cardinalidade 1:1 • Caso 2: ALUNO (Matricula, Nome, e-mail, endereço) TESE (Aluno-Matricula , Titulo, Resumo, Ano) ALUNO TESE PROD UZ (1,1) (0,1) Matricula Nome e-mail endereço Titulo Resumo Ano ALUNO (Matricula, Nome, e-mail, endereço) TESE (Aluno-Matricula , Titulo, Resumo, Ano) Matricula Nome e-mail endereço ALUNO Aluno Matricula Titulo Resumo Ano TESE Para cardinalidade 1:N Para cardinalidade 1:N FABRICA (Nome, CNPJ) LOJA (CNPJ_Loja, Fabrica-CNPJ , Razão_Social, End, Nome, Telefone) FABRICA (Nome, CNPJ) LOJA (CNPJ_Loja, Fabrica-CNPJ , Razão_Social, End, Nome, Telefone) CNPJ Nome FABRICA CNPJ FABRICA CNPJ Razão Social End Nome Telefone LOJA Para cardinalidade 1:N FABRICA(Nome, CNPJ) CADASTRO(CNPJ, CNPJ_Loja) LOJA(CNPJ_Loja, Razão_Social, End, Nome, Telefone) FABRICA(Nome, CNPJ) CADASTRO(CNPJ, CNPJ_Loja) LOJA(CNPJ_Loja, Razão_Social, End, Nome, Telefone) CNPJ Nome FABRICA CNPJ Razão Social End Nome Telefone LOJA CADASTRO FABRICA CNPJ FABRICA CNPJ Para cardinalidade N:M Para cardinalidade N:M ROUPA (Cod_modelo, Preço, TipoTecido) POSSUEM (Cod_Modelo,Sigla) TECIDO (Sigla, Descrição) ROUPA (Cod_modelo, Preço, TipoTecido) POSSUEM (Cod_Modelo,Sigla) TECIDO (Sigla, Descrição) Sigla Descrição TECIDO TECIDO Sigla ROUPA Cod_modelo POSSUEM ROUPA Cod_modelo Preço TipoTecido Para cardinalidade N:M EMPREGADO Projeto Trabalha em (1,N) (1,N) Matricula Nome e-mail Código Nome Local Horas Para cardinalidade N:M EMPREGADO Projeto Trabalha em (1,N) (1,N) Matricula Nome e-mail Código Nome Local Horas EMPREGADO (Matricula, Nome, e-mail) PROJETO (Código , Nome , Local) EMPREGADO/PROJETO (EMPREGADO-Matricula, PROJETO-Código, Horas) EMPREGADO (Matricula, Nome, e-mail) PROJETO (Código , Nome , Local) EMPREGADO/PROJETO (EMPREGADO-Matricula, PROJETO-Código, Horas) Matricula Nome e-mail EMPREGADO Código Nome Local PROJETO EMPREGADO. Matricula PROJETO. Código Local EMPREGADO/PROJETO Para cardinalidade N:M PEÇA FORNECEDOR Forneci mento (1,N) (1,N) Codigo Nome Cor Cidade Codigo Nome Cidade QTDE Para cardinalidade N:M PEÇA FORNECEDOR Forneci mento (1,N) (1,N) Codigo Nome Cor Cidade Codigo Nome Cidade QTDE PEÇA (Codigo, Nome, Cor, Cidade) FORNECEDOR (Codigo , Nome, Cidade) FORNECIMENTO (PEÇA-Codigo, FORNECEDOR-Codigo, QTDE) Para cardinalidade N:M PEÇA CURITIBAAZULPARAFUSOP3 SPVERDEPORCAP2 RJVERMELHOPREGOP1 CIDADECORNOMECODIGO FORNECEDOR SPJOÃOS2 RJSILVAS1 CIDADENOMECODIGO FORNECIMENTO 400P2S2 300P1S2 400P3S1 200P2S1 300P1S1 QTDECOD_PECACOD_FORN AMBULATORIO MEDICO numero andar capacidade CONSULTA PACIENTE (1,1) (1,1) (1,1) (0,N) (0,1) (1,N) Matricula nome crm ESPECIALIDADE (0,N) codigo nome codigo nome CPF Dt.Nascimento Data Hora (0,N) MEDICO (0,1) Matricula nome crm ESPECIALIDADE (0,N) codigo nome ESPECIALIDADE (Codigo, Nome) MEDICO (Matricula, Nome, Crm, ESPECIALIDADE- Codigo ) AMBULATORIO MEDICO numero andar capacidade CONSULTA PACIENTE (1,1) (1,1) (1,1) (0,N) (0,1) (1,N) Matricula nome crm ESPECIALIDADE (0,N) codigo nome codigo nome CPF Dt.Nascimento Data Hora (0,N) AMBULATORIO MEDICO numero andar capacidade CONSULTA PACIENTE (1,1) (1,1) (1,1) (0,N) (1,N) Matricula nome crm codigo nome CPF Dt.Nascimento Data Hora (0,N) MEDICO (Matricula, Nome, Crm, ESPECIALIDADE- Codigo ) AMBULATORIO (Numero, Andar, Capacidade) PACIENTE (Codigo, Nome, CPF, Dt.Nascimento CONSULTA (MEDICO- Matricula, AMBULATORIO- Numero, PACIENTE-Codigo,Data,Hora) CONSULTA (MEDICO- Matricula, AMBULATORIO- Numero, PACIENTE-Codigo,Data,Hora) MED. Matricula AMB. Numero PAC. Codigo Data Hora 012 2 001 25/11/2009 08:15 017 5 005 26/12/2009 23:50 015 3 009 31/12/2009 12:00 012 2 001 25/11/2009 19:30 015 3 009 15/01/2010 11:30 • Uma chave primária é uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais dentro de uma tabela. CHAVE PRIMÁRIA Por isso, nas definições formais de chave primária, exige-se que essa seja mínima. Uma chave é mínima quando todas suas colunas forem efetivamente necessárias para garantir o requisito de unicidade de valores da chave. CONSULTA (MEDICO- Matricula, AMBULATORIO- Numero, PACIENTE-Codigo, Data, Hora) MED. Matricula AMB. Numero PAC. Codigo Data Hora 012 2 001 25/11/2009 08:15 017 5 005 26/12/2009 23:50 015 3 009 31/12/2009 12:00 012 2 001 25/11/2009 19:30 015 3 009 15/01/2010 11:30 MEDICO (Matricula, Nome, Crm, ESPECIALIDADE- Codigo ) ESPECIALIDADE (Codigo, Nome) AMBULATORIO (Numero, Andar, Capacidade) PACIENTE (Codigo, Nome, CPF, Dt.Nascimento CONSULTA (MEDICO- Matricula, AMBULATORIO- Numero, PACIENTE-Codigo,Data,Hora) Próxima Aula... • Aprender um método de conversão do modelo conceitual para o modelo relacional para: • Relacionamentos recursivos • Generalizações • Agregações • Relacionamentos n-ários
Compartilhar