Baixe o app para aproveitar ainda mais
Prévia do material em texto
Unidade 1a: O Modelo Relacional Conteúdo Modelo Relacional Convertendo ER em Tabelas Relacionais 1:1, 1:N, N:N Generalizações Agregações Relacionamentos recursivos Relacionamentos N-ários Exercício Modelo Relacional Fundamentado na teoria de conjuntos, combinado com a idéia que não é relevante para o usuário saber onde os dados estão nem como os dados estão armazenados. O usuário, para lidar com estes objetos, conta com um conjunto de operadores e funções de alto nível, constantes na álgebra relacional. Definição Matemática de Relação Sejam conjuntos, não necessariamente disjuntos D1, D2, ..., Dn de valores atômicos R é uma relação sobre estes conjuntos (domínios de R), se e somente se R é um conjunto de n-uplas (tuplas) ordenadas <d1, d2, ... , dn>, tal que para i=1,2,...,n di pertence a Di Exemplo: A = {1, 2, 3, 4, 5} B = {2, 3, 4, 6, 7} R = B é o dobro de A R = {(2,1), (4,2), (6,3)} Modelo Relacional Relação = Tabela bi-dimensional, composta de linhas e colunas de dados. Relação recursiva = relaciona o objeto a si mesmo. Atributo = Coluna Grau de uma relação = Número de atributos Tupla = Cada linha da relação Domínio de um atributo = Conjunto ao qual pertence os valores de um atributo Valor nulo de um atributo de uma tupla = Atributo inaplicável ou com valor desconhecido Esquema de Banco de Dados Relacional = Nomes das relações seguidos pelos nomes dos atributos, com os atributos chaves sublinhados e com as chaves estrangeiras identificadas. Banco de Dados Relacional Modelo Relacional Atributo Identificador: O atributo ou conjunto de atributos que será utilizado para identificar instâncias de uma entidade. Faz parte do modelo conceitual. Chave: designa o conceito de item de busca, isto é, um atributo ou conjunto de atributos que será utilizado nas consultas à base de dados. É um conceito lógico da aplicação. Índice: É um recurso físico que visa otimizar a recuperação de uma informação, via um método de acesso. Seu objetivo principal está relacionado com a performance de uma aplicação. Uma chave pode ser utilizada como índice, mas um índice não é, necessariamente, uma chave Chave Candidata – Deve ser única, ou seja, nenhuma tupla de uma mesma relação pode ter o mesmo valor para o atributo escolhido como chave candidata – Deve ser irredutível, nenhum subconjunto da chave candidata pode ter sozinho a propriedade de ser único. – Pode ser : Simples : quando é composta por apenas um atributo Composta : quanto possui mais de um atributo para formar a chave Chave primária – É um caso especial da chave candidata. É a escolhida entre as candidatas para identificar unicamente uma tupla. Chave estrangeira – É quando um atributo de uma relação é chave primária em outra. – Constitui um conceito de vital importância no modelo relacional: é o elo de ligação lógica entre as tabelas (relacionamentos) – Através das operações com as chaves estrangeiras que se garante a INTEGRIDADE REFERENCIAL do banco de dados: Modelo Relacional Regras de Integridade Regras que devem ser obedecidas em todos os estados válidos da base de dados (podem envolver uma ou mais linhas de uma ou mais tabelas) Integridade da Entidade O valor da chave não pode ser vazio A chave primária serve como representante na base de dados de uma entidade – se a chave primária for vazia, alinha não corresponde a nenhuma entidade Integridade de Chave Primária O chave primária tem que ser única Integridade Referencial As chaves estrangeiras tem que ser respeitadas, ou seja, se existe um determinado valor para o atributo na tabela onde ele é chave estrangeira este valor deve existir na tabela onde ele é chave primária Restrições de Integridades Semânticas Todas as demais regras que devem ser obedecidas por todos os estados válidos da base de dados Modelo Relacional Convertendo o Diagrama ER para Tabelas Relacionais Para cardinalidade 1:1 Incluir todos os atributos numa tabela simples. O nome da tabela relacional pode ser o nome de uma das entidades que participam do relacionamento, um nome composto formado pela combinação dos nomes das duas entidades ou um novo nome que represente o significado dos dados na tabela. Para cardinalidade 1:N Incluir o “identificador”do lado “um” como um atributo no lado “muitos”. O identificador colocado do lado “muitos” é chamado de chave estrangeira. Para cardinalidade N:M Criar uma nova tabela e colocar as chaves primárias de cada uma das entidades como atributos na nova tabela. A nova tabela é chamada de tabela associativa. O identificador da tabela é uma chave composta formada pelas chaves primárias das duas tabelas que participam do relacionamento. Cada identificador colocado na nova tabela é uma chave estrangeira. Convertendo o Diagrama ER para Tabelas Relacionais Tem Aluno Sobrenome Street CPF Endereço residencial Rua Cidade Estado Aluno (NumMatr, CPF, Nome, Sobrenome, Rua, Cidade , Estado) Colocando Atributos 1 : 1 1 : 1 Nome NumMatr Convertendo o Diagrama ER para Tabelas Relacionais Frequenta Aluno Especiali- zação 1:N 1:1 Estado Cidade Rua Sobrenome Nome CPF Cd-ident Descrição Aluno (NumMatr,CPF, Cd-ident, Nome, Sobrenome, Rua, Cidade, Estado) Especialização (Cd-ident, Descrição) Colocando chave estrangeira NumMatr Convertendo o Diagrama ER para Tabelas Relacionais matricula Curso Aluno 1:7 0:N Creditos Estado Cidade NomeCurso Nome Cd_id CPF Sobrenome Colocando chaves estrangeiras Rua Curso (Cd-id, NomeCurso, Creditos) Matricula (Cd_id, NumMatr) Aluno (NumMatr,CPF, Nome, Sobrenome, Rua, Cidade, Estado) NumMatr Pós- Graduação Aloja mento Clube Graduação Media final Dt_nasc Aluno NumMatr é-u m Nome Sobre nome Sexo Dt_nasc 0:1 0:1 1 : 1 Aluno (NumMatr,Nome,Sobrenome, Sexo, Dt_nasc) Graduação (NumMatr,Media_final,dt_tese) Pós_graduação (NumMatr, alojamento, clube) Colocando chaves estrangeiras Convertendo o Diagrama ER para Tabelas Relacionais - Generalizações Convertendo o Diagrama ER para Tabelas Relacionais - Agregações Medico(CRM, Nome_Med) Paciente (ID,Nome_Pac, End) Consulta(CRM, ID, Data_Cons) Exame (Cod_Ex, Descricao) Solicita (CRM, ID, Cod_Ex, Dt_Realiz) Convertendo o Diagrama ER para Tabelas Relacionais – Relacionamentos Recursivos Convertendo o Diagrama ER para Tabelas Relacionais – Relacionamentos Recursivos Supervisiona Matr Empregado Nome Sobrenome 0 : N 1 : 1 Colocando chaves estrangeiras Empregado (Matr, Matr_Supervisor,Nome,Sobrenome) Convertendo o Diagrama ER para Tabelas Relacionais – Relacionamentos Recursivos Compõe Num_peça Peça Desc_peça Qtde_disp 0 : M 0 : N Qtde_neces Composição (Num_peça, Num_peça_comp, Qtde_neces) Nova tabela de associação Colocando chaves estrangeiras Peça (Num_peça, Desc_peça,Qtde_disp) Depósito (Cd_dep, Localiz) Pedido Cliente End Item Depósito Cd_cli Id_item Desc Localiz Cd_dep Item (Id_item, Desc)Pedido (Cd_cli, Cd_dep, Id_item) Cliente (Cd_cli, End) Nova tabela de associação Colocando chaves estrangeiras 0:N 0:N 0:N Convertendo o Diagrama ER para Tabelas Relacionais – Relacionamentos n-ários Exercício PRODUTO CONTRATOVENDEDOR CLIENTE CLIENTE_PJ CLIENTE_PF compra tem é-um Vn Vnome Pn Pnome Tipo Valor N N N PU Qtde Cn Status CNPJRsocial CPFCnome N 1 Converter o modelo conceitual abaixo em tabelas do modelo lógico relacional.
Compartilhar