Aécio Costa
O Modelo de Dados Relacional foi introduzido por Codd (1970). Entre os modelos de dados de implementação, o modelo relacional é o mais simples, com estrutura de dados uniforme, e também o mais formal.
O modelo de dados relacional representa os dados da base de dados como uma coleção de relações. Na terminologia relacional: Linha = Tupla Coluna = Atributo Tabela = Relação Tipo dos Valores da Coluna = Domínio
Representação do Diagrama Relacional ESTUDANTE
Esquema Diagrama Relacional Companhia Atributo Chave
O atributo DNÚMERO tanto de DEPARTAMENTO quanto de LOCAIS_DEPTO referem-se ao mesmo conceito do mundo real (o número dado a um departamento); Significa que é permitido dar nomes de atributos distintos para um mesmo conceito do mundo real; O atributo DNÚMERO em departamento é uma chave primária em DEPARTAMENTO enquanto que em LOCAIS_DEPTO é uma chave estrangeira.
Integridade de Entidade, Referencial e Chaves Estrangeiras
Restrição de integridade de entidade Estabelece que nenhum valor da chave-primária pode ser nulo. Isso porque, o valor de uma chave-primária é utilizado para identificar tuplas em uma relação. As restrições de chave e de integridade de entidade aplicam-se apenas a relações individuais.
Não é possível haver valores null
Restrição de Integridade Referencial Restrição que é especificada entre duas relações e é usada para manter a consistência entre tuplas de duas relações. Informalmente, a restrição de integridade referencial estabelece que uma tupla de uma relação que se refere à outra relação deve se referir a uma tupla existente naquela relação.
Exemplo:
Restrições de Integridade Referencial e o Modelo Relacional
Todas as restrições de integridade devem ser especificadas no esquema da base de dados relacional; Em um sistema relacional, a linguagem de definição de dados (DDL) deveria fornecer recursos para especificar os vários tipos de restrições tal que o SGDB possa verificá-las automaticamente.
Mapeamento do MER para o Modelo de Dados Relacional O modelo de dados de alto-nível normalmente adotado é o Modelo Entidade-Relacionamento (MER) e o esquema das visões e de toda a base de dados são especificados em diagramas entidade relacionamento (DER);
Após a criação do modelo ER é necessário o mapeamento baseado em diagrama para um modelo de dados de implementação; Existem três tipos de modelos de dados de implementação: hierárquico, rede e relacional; 7 passos podem ajudar no mapeamento do modelo ER para o relacional.
Modelo ER
Passo 1 Para cada entidade regular E no DER, criar uma relação R que inclua todos os atributos simples de E. Para um atributo composto, inclua apenas os atributos simples que compõem o atributo composto. Escolha um dos atributos-chave de E como sendo a chave-primária de R. Se a chave escolhida de E for composta, então o conjunto de atributos simples que o compõem irão formar a chave-primária de R.
Passo 1
Passo 2 Para cada tipo de entidade fraca W do DER com o tipo de entidade de identificação E, criar uma relação R e incluir todos os atributos simples (ou os componentes simples de atributos compostos) de W como atributos de R. Além disso, incluir como a chave-estrangeira de R a chave-primária da relação que corresponde ao tipo de entidade de identificação.
Passo 2
Passo 3 Para cada tipo de relacionamento binário 1:1 R do DER, criar as relações S e T que correspondem aos tipos de entidade participantes em R. Escolher uma das relações, por exemplo S, que inclua como chaveestrangeira de S a chave-primária de T. É melhor escolher o tipo de entidade com participação total em R como a relação S. Inclua todos os atributos simples (ou os componentes simples de atributos compostos) do tipo de relacionamento 1:1 R como atributos de S.
Passo 3
Passo 4 Para cada tipo de relacionamento binário regular 1:N (não fraca) R, identificar a relação S que representa o tipo de entidade que participa do lado N do tipo de relacionamento. Incluir como chave-estrangeira em S a chaves-primária da entidade que representa o lado N. Isto porque cada instância da entidade do lado 1 está relacionada a mais de uma instância de entidade no lado N do tipo de relacionamento. Inclua também quaisquer atributos simples (ou componentes simples de atributos compostos) do tipo de relacionamento 1:N como atributos de S.
Passo 4
Passo 5 Para cada tipo de relacionamento binário M:N R, criar uma nova relação S para representar R. Incluir como chave-estrangeira em S as chaves-primárias das relações que representam os tipos de entidade participantes; sua combinação irá formar a chave-primária de S. Inclua também qualquer atributo simples do tipo de relacionamento M:N (ou componentes simples dos atributos compostos) como atributos de S.
Passo 5
Passo 6 Para cada atributo A multivalorado, criar uma nova relação R que inclua um atributo correspondendo a A e a chave-primária K da relação que representa o tipo de entidade ou o tipo de relacionamento que tem A como atributo. A chave-primária de R é a combinação de A e K.
Passo 6
No final teremos especificando chaves estrangeiras:
Passo 7 Para cada tipo de relacionamento n-ário R, n>2, criar uma nova relação S para representar R. Inclua como chave-estrangeira em S as chaves-primárias das relações que representam os tipos de entidades participantes. Incluindo-se também qualquer atributo simples do tipo de relacionamento n-ário (ou componentes simples dos atributos compostos) como atributo de S. A chave-primária de S é normalmente uma combinação de todas as chaves-estrangeiras e referencia as relações que representam os tipos de entidades participantes.
Passo 7
Passo 7
Exercício Construa o modelo de dados relacional para o modelo ER do Banco do Brasil. Discussão em Sala.
Entrega Individual Modelo Relacional Próxima Aula Projeto da Faculdade Projeto Biblioteca