Banco de Dados - Senado



Documentos relacionados
ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL

Modelo Relacional. Modelo Relacional. Tabelas

Abordagem relacional Capítulo 4

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro.

O modelo de dados relacional e as restrições de um banco de dados relacional

Aula VI -MODELO RELACIONAL

Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas. Campus Alegrete. Banco de Dados I. Cristhiano Bossardi de Vasconcellos.

CIn/UFPE Projeto Conceitual de BD - Prof. Robson Fidalgo 1

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

Modelo Entidade-Relacionamento

LINGUAGEM DE BANCO DE DADOS

Banco de Dados Modelo Conceitual, Lógico, Físico, Entidade- Relacionamento (ER) Hélder Nunes

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

Modelo de Dados. Modelos Conceituais

Profa. Daniela Barreiro Claro

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

Disciplina: Unidade III: Prof.: Período:

Prof.: Clayton Maciel Costa

Ciclo de vida de um banco de dados relacional

INF Fundamentos de Banco de Dados Exercícios sobre normalização

MODELO RELACIONAL - UFMA

Modelo de Dados. Modelo para organização dos dados de um BD

Banco de Dados Transformação Modelo Conceitual para Lógico Relacional. Prof. Juliano Lucas Gonçalves

Modelo Relacional. Aécio Costa

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr waltenomartins@yahoo.

Prof.: Clayton Maciel Costa

Banco de Dados - Senado

Modelo Entidade-Relacionamento DCC011. Modelo Entidade-Relacionamento. Processo de Projeto de Bancos de Dados

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Conceitos Básicos de Banco de Dados

Disciplina de Banco de Dados Parte V

Banco de Dados Modelo Entidade-Relacionamento. Frederico D. Bortoloti

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian

Bases de Dados. Parte III: O Modelo Relacional

Disciplina: Unidade II: Prof.: Período:

Banco de Dados. Modelo Relacional. Prof. Enzo Seraphim

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

MC536 Bancos de Dados: Teoria e Prática

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr

Integridade dos Dados

Faculdade Lourenço Filho - ENADE

Projeto de Banco de Dados

CICLO DE VIDA DE UM BD

MODELAGEM DE DADOS. Banco de Dados I. O uso da análise e do projeto Orientados a Objetos atenuou a separação! Unidade I

Prof. Alexandre Unterstell Banco de Dados I

Banco de Dados. Maurício Edgar Stivanello

MODELO RELACIONAL E RESTRIÇÕES DE INTEGRIDADE

Níveis de Abstração. Mundo Real. Transformações entre modelos. Analista. Mini-mundo. Banco de Dados I. Unidade I. Modelo de Banco de Dados.

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br. Aula 3. Prof. Rafael Dias Ribeiro.

BANCO DE DADOS -PROJETO LÓGICO. Prof. Angelo Augusto Frozza, M.Sc.

NOME SEXO CPF NASCIMENTO SALARIO

Exercícios de Lógica Exercícios de Fixação 08

Banco de Dados Capítulo 2: Modelo Relacional. Bach. em Ciência da Computação UFPB/CCT Cláudio Baptista, PhD

Funcionários. Funcionários. PrimeiroNome NomesDoMeio ÚltimoNome. CPF Nome Salário. CPF PrimeiroNome NomesDoMeio ÚltimoNome Salário

Modelo Relacional. Modelo Relacional. Conceitos Gerais: Relação

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

Banco de Dados Básico

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

Orientação a Objetos

Tecnologias e Linguagens para Banco de Dados I. Expressão do Relacionamento. Expressão do Relacionamento

Modelo de Dados Relacional Restrições de um Banco de Dados Relacional

Modelo de Entidade e Relacionamento (MER) - Parte 07

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

Banco de Dados I. 1. Conceitos de Banco de Dados

Comandos DDL. id_modulo = id_m odulo

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

Introdução Banco de Dados

Banco de Dados Lista de Exercícios 01

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

INTRODUÇÃO. Diferente de Bando de Dados

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio

Banco de Dados. Microsoft Access

Revisão de Banco de Dados

PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc.

Modelo Relacional. Banco de Dados 2º trimestre Prof. Patrícia Lucas

PROJETO LÓGICO. Passos para transformação ER Relacional: 1) Tradução inicial de Entidades e seus Atributos;

Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos

Faculdade Pitágoras 24/10/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Ciclo de Desenvolvimento de Sistemas de BD

Núcleo de Pós Graduação Pitágoras

AULA Entidade-Relacionamento

Curso de Gestão em SI MODELAGEM DE DADOS. Rodrigo da Silva Gomes. (Extraído do material do prof. Ronaldo Melo - UFSC)

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações

Junções e Índices em Tabelas

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

BDII SQL Junção Revisão 8

Conceitos de Banco de Dados

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Capítulo 5 Complemento. 5.1 Laudon, Cap. 5

Descreve relacionamentos entre objetos de dados; conduz à modelagem de dados; atributos de cada objeto => Descrição de Objetos de Dados;

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Prof.: Clayton Maciel Costa

Transcrição:

Banco de Dados - Senado Modelo Relacional Ilka Kawashita Material preparado :Prof. Marcio Vitorino

Abordagem Relacional n Abordagem de modelagem de dados utilizada nos sistemas de gerenciamento de bancos de dados do tipo relacional. n Modelagem a nível lógico.

Banco de Dados Relacional n Tabelas: q Compostas de: n n n Linhas; Colunas; e Chaves Primárias. q Relacionadas através de: n Chaves estrangeiras.

Terminologias

Tabelas

Características das Tabelas n Linhas de uma tabela não estão ordenadas. n Valor do campo: q Atômico; q Monovalorado.

Implementação de Relacionamento 1:1 Conceitual CPF Nome CPF Nome Homem (0,1) (0,1) Casa Mulher Lógico Homem CPF Nome 111 Caio 222 Beto Homem CPF Nome 111 Caio 222 Beto CPF_Mulher 777 888 333 Abel 333 Abel CPF Nome CPF_Homem CPF Nome Mulher 777 Ana 888 Lia 111 222 Mulher 777 Ana 888 Lia 999 Bia 999 Bia

Implementação de Relacionamento 1:1 Conceitual CPF Nome CPF Nome Homem (0,1) (1,1) Casa Mulher Lógico Homem CPF Nome 111 Caio 222 Beto Homem CPF Nome 111 Caio 222 Beto CPF_Mulher 777 888 333 Abel Mulher CPF Nome 777 Ana 888 Lia 999 Bia CPF_Homem 111 222 Mulher CPF Nome 777 Ana 888 Lia 999 Bia

Implementação de Relacionamento 1:1 Conceitual CPF Nome CPF Nome Homem (0,1) (1,1) Casa Mulher Lógico Homem CPF Nome 111 Caio 222 Beto Homem CPF Nome 111 Caio 222 Beto CPF_Mulher 777 888 333 Abel Mulher CPF Nome 777 Ana 888 Lia 999 Bia CPF_Homem 111 222 Mulher CPF Nome 777 Ana 888 Lia 999 Bia

Implementação de Relacionamento 1:1 Conceitual CPF Nome CPF Nome Homem (0,1) (1,1) Casa Mulher Lógico Casal CPF_M Nome_M 777 Ana 888 Lia 999 Bia CPF_H Nome_H 111 Caio 222 Beto

Implementação de Relacionamento 1:1 Conceitual CPF Nome CPF Nome Homem (1,1) (1,1) Casa Mulher Lógico Homem CPF Nome 111 Caio 222 Beto Homem CPF Nome 111 Caio 222 Beto CPF_Mulher 777 888 333 Abel 333 Abel 999 Mulher CPF Nome 777 Ana 888 Lia 999 Bia CPF_Homem 111 222 333 Mulher CPF Nome 777 Ana 888 Lia 999 Bia

Implementação de Relacionamento 1:1 Conceitual CPF Nome CPF Nome Homem (1,1) (1,1) Casa Mulher Lógico Casal CPF_M Nome_M 777 Ana 888 Lia 999 Bia CPF_H Nome_H 111 Caio 222 Beto 333 Abel

Implementação de Relacionamento 1:1

Implementação de Relacionamento 1:N Conceitual CPF Nome CNPJ Nome Pessoa N 1 Trabalha Empresa Lógico Empresa CNPJ 1A 2B 3C Nome IBM CA Sun Pessoa CPF Nome 777 Ana 888 Lia 999 Bia CNPJ_Empresa 1A 3C

Implementação de Relacionamento 1:N Conceitual CPF Nome CNPJ Nome Pessoa (0,N) (1,1) Trabalha Empresa Lógico Empresa CNPJ 1A 2B 3C Nome IBM CA Sun Pessoa CPF Nome 777 Ana 888 Lia 999 Bia CNPJ_Empresa 1A X 3C

Implementação de Relacionamento 1:N Conceitual CPF Nome Funcao CNPJ Nome Pessoa (0,N) (1,1) Trabalha Empresa Lógico Empresa CNPJ 1A 2B 3C Nome IBM CA Sun CPF Nome CNPJ_Empresa Funcao Pessoa 777 Ana 888 Lia 1A 2B GP Desenvolvedor 999 Bia 3C Testador

Implementação de Relacionamento 1:N

Implementação de Relacionamento N:M Conceitual CPF Nome Cod Nome Pessoa N Alocação N Departamento Lógico Departamento Pessoa Cod Nome D01 RH D02 TI D03 Adm CPF Nome 111 Caio 222 Beto 333 Abel Alocação Cod CPF D01 111 D01 222 D03 222

Implementação de Relacionamento N:M Conceitual CPF Nome Data Cod Nome Pessoa N Alocação N Departamento Lógico Departamento Cod D01 D02 D03 Nome RH TI Adm Alocação Cod CPF Data D01 111 10/10/1999 Pessoa CPF Nome 111 Caio 222 Beto 333 Abel D01 222 D03 222 D03 333 D01 111 10/11/2000 10/12/2001 10/10/2002 10/10/2003

Implementação de Relacionamento N:M Conceitual CPF Nome Data Cod Nome Pessoa N Alocação N Departamento Salario Departamento Cod D01 D02 D03 Nome RH TI Adm Lógico Alocação Cod CPF Data D01 111 10/10/1999 Salario 100,00 Pessoa CPF Nome 111 Caio 222 Beto 333 Abel D01 222 D03 222 D03 333 D01 111 10/11/2000 10/12/2001 10/10/2002 10/10/2003 200,00 300,00 400,00 500,00

Implementação de Relacionamento N:M

Chaves n Conceito básico para estabelecer relações entre as linhas da tabela; n No modelo relacional são consideradas as chaves: q primárias; q alternativas; e q estrangeiras.

Chave Primária n Coluna ou combinação de colunas cujos valores distinguem uma linha das demais dentro de uma tabela. n A coluna CódigoEmp é a chave primária desta tabela, pois os valores contidos em seus campos permitem distinguir uma linha das demais linhas desta tabela.

Chave Estrangeira n n Coluna ou combinação de colunas, cujos valores aparecem na chave primária (candidata) de uma tabela do banco. Mecanismo que permite a implementação de relacionamentos em um banco de dados relacional.

Chave Estrangeira n CódigoEmp na tabela Dependente é uma chave estrangeira em relação à tabela Empregado.

Relacionamento Identificador Conceitual CPF Nome NSeq Nome Pessoa 1 N Possui Dependente Lógico Pessoa CPF Nome 777 Ana 888 Lia 999 Bia Dependente NSeq Nome 1 Luiz 2 Joao 1 Jose CPF 777 777 999

Relacionamento Identificador Conceitual CPF Nome NSeq Nome Pessoa 1 N Possui Dependente Lógico Pessoa CPF Nome 777 Ana 888 Lia 999 Bia Dependente NSeq Nome 1 Luiz 2 Joao 1 Jose CPF 777 777 999

Validação Chave Estrangeira n n n Quando da inclusão de uma linha na tabela que a contém: q deve ser garantida a existência do valor da chave estrangeira na tabela referenciada que contém a chave primária respectiva. Quando da alteração do valor da chave estrangeira: q deve ser garantida a existência do valor da chave estrangeira na tabela referenciada que contém a chave primária respectiva. Quando da exclusão de uma linha da tabela que contém a chave primária referenciada pela chave estrangeira: q deve ser garantida que na coluna chave estrangeira não apareça o valor da chave primária excluída.

Validação Chave Estrangeira Conceitual CPF Nome CNPJ Nome Pessoa (0,N) (1,1) Trabalha Empresa Lógico Empresa CNPJ 1A 2B 3C Nome IBM CA Sun CPF Nome CNPJ_Empresa Pessoa 777 Ana 888 Lia 999 Bia 1A 4D 3C

n Chave Estrangeira (Observação) O termo chave estrangeira pode levar a crer que está sempre referenciada a uma chave primária de outra tabela, mas em certos casos ela pode estar referenciada a uma chave primária da mesma tabela.

Chave Alternativa n n Em certas situações mais de uma coluna ou combinação de colunas servem para distinguir uma linha das demais dentro de uma tabela.se uma destas for escolhida como chave primária, as demais serão chamadas de chaves alternativas. Não há qualquer diferença entre usar as CódigoEmp ou CIC como chave primária.

Domínios e Valores Vazios n n n n n n n Quando uma tabela é criada pode ser definido, para cada coluna, um conjunto de valores que os campos da respectiva coluna podem assumir. Este conjunto de valores é conhecido como domínio da coluna ou domínio do campo. Deve ainda, ser especificado se os campos da coluna podem assumir vazios (NULL. Vazio significa que o campo não assumiu nenhum valor do seu domínio. As colunas para as quais não são admitidos vazios são chamadas de colunas obrigatórias. As colunas para as quais são admitidos vazios são chamadas de colunas opcionais. Os SGBDR exigem que todas as colunas que compõem a chave primária sejam obrigatórias. Chave estrangeira pode conter coluna ou colunas opcionais.

Restrições de Integridade n É uma regra de consistência de dados que é garantida pelo próprio SGBD. n Restrições de Integridade Básicas; q Integridade de Domínio; q Integridade de Vazio; q Integridade de Chave; q Integridade Referencial; q Integridade de Unicidade; n São garantidas automaticamente pelo SGBD Relacional. n O programador não precisa implementá-las.

Restrições de Integridade n n n n n Integridade de Domínio: q Define os valores que podem ser assumidos pelos campos de uma coluna. Integridade de Vazio: q Especifica se os campos de uma coluna podem ou não serem vazios. Integridade de Chave: q Define que os valores da chave primária e alternativa devem ser únicos. Integridade Referencial: q Define que os valores dos campos que aparecem numa chave estrangeira devem aparecer na chave primária (candidata) da tabela referenciada. Integridade de Unicidade: q Define que o valor do campo ou campos são únicos.

Restrições Semânticas (Regras de Negócio) n Existem outras restrições que não se encaixam nas acima citadas, mas são necessárias para um BDR, são as restrições semânticas e precisam ser desenvolvidas pelos programadores. n Exemplos: q um empregado do Setor de Finanças não pode ser Médico. q um empregado não pode ter salário maior do que seus chefes.

Especificação de Banco de Dados n A especificação do Banco de Dados Relacional (BDR), ou esquema do BDR, deve conter no mínimo: q Tabelas que formam o BDR; q Colunas que as tabelas possuem; q Restrições de integridade.

Especificação de Banco de Dados n Cada tabela é listada pelo seu nome. n Após o nome da tabela e entre parêntesis são listados os nomes das colunas, separados por vírgula. n A coluna ou colunas que contém a chave primária são sublinhadas. n Após a definição da tabela são listadas as definições das chaves estrangeiras que aparecem na tabela. n Se a chave estrangeira é formada por várias colunas, elas são declaradas separadas por vírgulas.

Especificação de Banco de Dados Empregado ( CódigoEmp, Nome, CódigoDepto, CategFunc ) Dependente (NºDepen, CódigoEmp, Nome, Tipo, DataNasc ) CódigoEmp referencia Empregado

Transformação de Modelos Mundo Real Requisitos de Dados Coleta/Especificação de Requisitos Requisitos Funcionais Projeto Conceitual Análise Funcional Projeto Lógico Projeto Funcional Projeto Físico Programação dados e regras SGBD Programa Programa de aplicação Programa de aplicação de de BD de aplicação BD

Transformação de Modelos

Transformação de Modelos n Objetivos do Projeto de dados: q boa performance q simplicidade de desenvolvimento q simplicidade de manutenção n Princípios de uma boa tradução: q evitar junções - ter os dados necessários a uma consulta numa mesma linha q diminuir a repetição de chaves primárias; e q evitar campos opcionais

Transformação de Modelos

Transformação de Modelos

Transformação de Modelos

Transformação de Modelos

Transformação de Modelos

Transformação de Modelos

Implementação de Relacionamento com grau > 2

Implementação da Generalização n Três formas de implementação: q Uma TABELA para toda a hierarquia. q Uma TABELA para cada entidade da hierarquia. q Uma TABELA para cada entidade especializada. CPF Nome Idioma CNH CRM

Uma Tabela Para Toda a Hierarquia Conceitual Lógico CPF Nome Empregado CPF Nome Idioma CNH CRM Tipo Idioma CNH CRM 111 Ana -- -- -- PES 222 Caio -- -- -- PES 333 Lia Inglês -- -- SEC 444 Beto -- M43 -- MOT 555 João -- -- C32 MED

Uma Tabela Para Cada Entidade da Hierarquia Conceitual Lógico CPF Nome Empregado CPF Nome 111 Ana 222 Caio 333 Lia 444 Beto 555 João Idioma CNH CRM Secretária CPF Idioma 333 Inglês Motorista CPF CNH 444 M43 Médico CPF CRM 555 C32 51

Uma Tabela Para Cada Entidade Especializada Conceitual Lógico CPF Nome Secretária CPF Nome Idioma 333 Lia Inglês Motorista CPF Nome CNH 444 Beto M43 Idioma CNH CRM Médico CPF Nome CRM 555 João C32 52