290 likes | 548 Views
Abordagem Relacional. URCAMP – SL Curso de Informática Banco de Dados I. Prof. Alfredo Parteli Gomes. Diagrama de DER. Exemplo - Clínica Em uma clínica trabalham médicos e existem pacientes internados.
E N D
Abordagem Relacional URCAMP – SL Curso de Informática Banco de Dados I Prof. Alfredo Parteli Gomes
Diagrama de DER • Exemplo - Clínica Em uma clínica trabalham médicos e existem pacientes internados. • Cada médico é identificado pelo seu CRM, possui um nome e recebe um salário na clínica; • Um médico tem formação em diversas especialidades (ortopedia, traumatologia, etc), mas só exerce uma delas na clínica; • Para todo paciente internado na clínica são cadastrados alguns dados pessoais: nome, RG, CPF, endereço, telefone(s) para contato e data do nascimento; • Um paciente tem sempre um determinado médico como responsável (com um horário de visita diário pré-determinado). Porém vários outros médicos podem participar do seu tratamento; • Pacientes estão sempre internados em quartos individuais, que são identificados por um número e ficam em um andar da clínica.
Diagrama de DER • Solução Exemplo
Estratégias de Modelagem • Estratégia de modelagem ER: • Uma seqüência de passos (uma “receita-de-bolo”) de transformação de modelos, desde o modelo inicial de modelagem, até o final. • Diferentes estratégias: • Top-down (E-R) • Bottom-up • Inside-out
Estratégias de Modelagem (top-down) • Início: “estudo dos objetivos estratégicos da organização, dos meios pelos quais estes objetivos podem ser realizados, das exigências de informações que devem ser satisfeitas para alcançar estes objetivos e dos sistemas necessários para fornecer estas informações” • MODELO ABSTRATO DE DADOS
Estratégias de Modelagem (top-down) • Ir gradativamente refinando estes conceitos em conceitos mais detalhados. • Modelagem superficial: • Enumeração das entidades. • Identificação dos relacionamentos (cardinalidade máxima) e hierarquias de generalização/especialização entre as entidades. • Determinação dos atributos de entidades e relacionamentos. • Determinação dos identificadores de entidades e relacionamentos. • O banco de dados é verificado quanto ao aspecto temporal.
Estratégias de Modelagem (top-down) • Modelagem detalhada: • Domínios dos atributos • Cardinalidades mínimas • Demais restrições de integridade • Validação do modelo: • Construções redundantes ou deriváveis a partir de outras no modelo • Validação com o usuário
Estratégias de Modelagem • Enfoque do Modelo E-R é “top-down”
Abordagem Relacional • Modelagem em nível lógico (SGBD) e não conceitual • Conceitos mínimos necessários à compreensão do projeto de bancos de dados relacionais.
Abordagem Relacional • Tabelas • compostas de • Linhas, • Colunas, • Chaves primárias, • relacionadas através de Chaves estrangeiras.
Abordagem Relacional Nome da tabela • Tabelas Valor de campo ou valor de atributo Tabela ou relação Linha ou tupla Coluna ou atributo Nome de campo ou nome de atributo
Abordagem Relacional • Terminologia Usaremos esta notação
Abordagem Relacional • Chaves (Constraints) • Conceito usado para especificar restrições de integridade básicas de um SGBD relacional. • Três tipos: • chave primária (Primary Key) • chave alternativa (Candidate Key) • chave estrangeira (Foreign Key)
Abordagem Relacional • Chave primária • É uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais dentro de uma tabela
Abordagem Relacional • Chave estrangeira • Mecanismo que permite a implementação de relacionamentos em um banco de dados relacional • Pode fazer parte da chave primária
Abordagem Relacional • Chave estrangeira
Abordagem Relacional • Chave estrangeira • Para uma chave estrangeira fazer parte de uma chave primária, ela não poderá ser NULA, ou seja, cardinalidade (0,1) ou (0,n)
Abordagem Relacional • Chave estrangeira na mesma tabela • Auto-relacionamento
Abordagem Relacional • Chave estrangeira na mesma tabela • Auto-relacionamento
Abordagem Relacional • Chave alternativa • Mais de uma coluna ou combinações de colunas podem servir para distinguir uma linha das demais. • Uma das colunas (ou combinação de colunas) é escolhida como chave primária. • As demais colunas ou combinações são denominadas chaves alternativas (UNIQUE KEY em SQL).
Abordagem Relacional • Chave alternativa
Abordagem Relacional • Super-chave • É um conjunto de um ou mais atributos que identifica unicamente uma entidade (Ex: Um conjunto de atributos de chave primária) • Chave natural • Uma chave primária que existe no domínio da aplicação, que tem significado no negócio (Ex: CPF na entidade Pessoa) • Chave substituta • Uma chave criada para identificar uma entidade (Ex: ID de uma entidade qualquer)
Abordagem Relacional • Domínio de uma coluna • Conjunto de valores que podem aparecer em uma coluna (atributo) • Um valor de campo pode assumir o valor NULL, ou seja, vazio • Abordagem relacional: • todas colunas que compõem a chave primária devem ser obrigatórias; • demais chaves podem conter colunas opcionais.
Abordagem Relacional • Restrições de integridade básicas • Integridade de domínio • Integridade de vazio • Integridade de chave • Integridade referencial • Restrições acima: • Garantidas automaticamente por um SGBD relacional através de especificação declarativa • Não é exigido que o programador escreva procedimentos para garanti-las explicitamente
Abordagem Relacional • Restrições de integridade semânticas • Há muitas outras restrições de integridade que não se encaixam nas categorias básicas. • Essas restrições são chamadas de restrições semânticas (ou regras de negócio) • Exemplos de restrições semânticas: • Um empregado do departamento denominado “Finanças” não pode ter a categoria funcional “Engenheiro”. • Um empregado não pode ter um salário maior que seu superior imediato
A especificação de um banco de dados relacional (chamada de esquema do banco de dados) deve conter no mínimo a definição do seguinte: Tabelas que formam o banco de dados, Colunas que as tabelas possuem, Restrições de integridade. Abordagem Relacional
Abordagem Relacional • Esquema resumido de modelo relacional
Referências Bibliográficas • HEUSER, Carlos Alberto. Projeto de Banco de Dados. Porto Alegre: Sagra Luzzatto, 2001.