Baixe o app para aproveitar ainda mais
Prévia do material em texto
O MODELO RELACIONAL DE BANCO DE DADOS Prof. Daniel Silos dsilos@live.estacio.br 2017 Daniel Silos – dsilos@live.estacio.brUNESA 2017 Introdução ao Modelo Relacional • Edgard Frank Codd (E. F. Codd ou Ted Codd) • Quem foi? • Onde trabalhava? • Quando criou o modelo? Daniel Silos – dsilos@live.estacio.brUNESA 2017 Sistemas Relacionais • Literatura inglesa – DBMS + Relational = RDBMS (Relational Database Management System) • Modelo Relacional – Evento mais importante em toda história da área de Banco de Dados Modelo Relacional Baseia-se Lógica e Matemática Daniel Silos – dsilos@live.estacio.brUNESA 2017 O que é um sistema relacional ? • Definição Introdutória • De modo abreviado (e informal), um sistema relacional é aquele no qual: 1. Os dados são percebidos pelo usuário como tabelas (e nada além de tabelas) 2. Os operadores à disposição dos usuários (por exemplo para recuperação de dados) são operadores que “geram” novas tabelas a partir das tabelas originais. (DATE, 2000) Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Domínios, Relações Variáveis e Valores • Relação • Informalmente chamadas também de tabelas; • Contém informações sobre entidades ou relacionamentos (oriundas da modela- gem conceitual); • Tabela de valores, onde cada linha representa uma coleção de valores de dados inter-relacionados; Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Domínios, Relações Variáveis e Valores • Relação • Tais conjuntos de valores podem representar uma instância de uma entidade ou um relacionamento da aplicação; • Nomes das tabelas e o nome das colunas podem e devem auxiliar na compreensão do significado dos valores armazenados. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Domínios, Relações Variáveis e Valores • Atributo • Nome dado no modelo relacional para cada coluna da relação (tabela). • Tupla • Nome dado no modelo relacional para cada linha da relação. • Domínio • consiste de um grupo de valores atômicos a partir dos quais um ou mais atributos (ou colunas) retiram seus valores reais. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Domínios, Relações Variáveis e Valores • Esquema de uma relação • consiste de um conjunto de atributos que descrevem as características dos elementos a ser modelados. • Instância de uma Relação • consiste no conjunto de valores que cada atributo, definido no esquema, assume em um determinado instante, formando o conjunto de tuplas Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Domínios, Relações Variáveis e Valores • Chave • conjunto de atributos de uma relação e que pode ser utilizado para a realização de qualquer operação que envolva atributos e valores de atributos. • Super Chave • é o maior conjunto de atributos para manipulação e/ou identificação univocamente de uma tupla em uma relação. Uma relação pode ter várias chaves para identificação unívoca de suas tuplas, onde cada uma é denominada de Chave Candidata. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Domínios, Relações Variáveis e Valores • Chave Primária • chave candidata escolhida durante a fase de projeto lógico para ser suportada pelo SGBD e assim, é mantido automaticamente a restrição de unicidade. Quando uma chave primária for constituída por mais de um atributo da relação esta é denominada de Chave Primária Composta, caso contrário e denominada Chave Primária Simples. Prof. Daniel Silos - dsilos@live.estacio.br Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Chave Estrangeira • é uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela. A chave estrangeira é o mecanismo que permite a implementação de relacionamentos em um banco de dados relacional • Geralmente uma chave estrangeira é chave primária em outra tabela, mas em alguns casos, oriundos de relacionamentos unários (recursivos ou auto relacionamentos), a chave estrangeira aponta para a chave primária existente na mesma tabela. • Ex: A matricula do superior sendo chave estrangeira da matrícula da tabela de colaboradores de uma organização. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Regras de integridade relacional • Restrição de Domínio • Os valores de atributos devem ser coerentes com os domínios correspondentes. Cada Atributos de uma relação é definido com base em um domínio de valores (exemplos: Idade, seu domínio são os números inteiros positivos; Salários, seu domínio são os números reais positivos). Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Regras de integridade relacional • Restrição de Chave Primária (unicidade) • cada valor de chave primária deve ser único dentro de seu escopo (a relação a que pertence). • Restrição de Entidade • o valor de uma chave primária nunca deve ser nulo. O valor nulo não permite a identificação de uma tupla. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Regras de integridade relacional • Restrição de Referência • toda referência a uma tupla através de chave estrangeira deve ser verificada, ou seja, toda tupla referenciada deve previamente existir no Banco de Dados a menos que esta restrição seja explicitamente desprezada pelo usuário do Banco de Dados. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Regras de integridade relacional • Restrições Semântica • podem ou não serem especificadas ou garantidas por um BD Relacional. se referem mais especificamente sobre valores ou características que determinados atributos podem assumir no contexto de uma determinada aplicação. As Restrições Semânticas consistem em definir intervalos de valores para os atributos, limites, condições de existência, e outras. Exemplos: Salário: valores no intervalo de 1000,00 a 14.000,00 reais; Categoria: Senior se tempo de trabalho >20, Pleno se tempo de trabalho é >10, Júnior caso contrário. Estrutura Relacional Daniel Silos – dsilos@live.estacio.brUNESA 2017 Restrição e Projeção (DATE, 2000) • Operador restrição (ou seleção) – Extrai um subconjunto das linhas de uma determinada tabela • Operador Projeção – Extrai um subconjunto das colunas de uma determinada tabela Exemplos de Operações Relacionais Daniel Silos – dsilos@live.estacio.brUNESA 2017 Exemplos: • A tabela abaixo representa um arquivo simples de filmes. Tabela Filmes Exemplos de Operações Relacionais Daniel Silos – dsilos@live.estacio.brUNESA 2017 Restrição: SELECT TITULO, ANO, QTD FROM FILMES WHERE ANO > 2007; Resultado: Exemplos de Operações Relacionais Daniel Silos – dsilos@live.estacio.brUNESA 2017 Projeção: SELECT TITULO, QTD FROM FILMES Resultado: Exemplos de Operações Relacionais Daniel Silos – dsilos@live.estacio.brUNESA 2017 TABELA: PRODUTOS Colunas L in h a s Daniel Silos – dsilos@live.estacio.brUNESA 2017 TABELA: PRODUTOS Atributos T u p la s Daniel Silos – dsilos@live.estacio.brUNESA 2017 Busca: SELECT MODELO, COD_PRODUTO, QTD FROM PRODUTOS WHERE ANO_LANCAMENTO = 2012 RESULTADO: Seleção ou Projeção ? Exemplos de Operações Relacionais Daniel Silos – dsilos@live.estacio.brUNESA 2017 Valor versus campo Campo: Interseção entre uma linha e uma coluna. Valor: O que é preenchido dentro de um determinado campo. Neste caso, o valor 112.Daniel Silos – dsilos@live.estacio.brUNESA 2017 • Referências – DATE, C. J. Introdução a sistemas de banco de dados. 7ª ed. Rio de Janeiro: Campus, 2000. – SILBERSCHATZ, Abraham; KORTH, Henry F; SUDARSHAN, S. A. Sistema de banco de dados. 5ª ed. Rio de Janeiro: Campus, 2006.
Compartilhar