Buscar

Banco de Dados - Aula 03 - Modelo Relacional

Prévia do material em texto

Aula 03 - Modelo Relacional
Banco de Dados
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Pedro dos Santos Borges
links:
https://www.devmedia.com.br/modelagem-relacional/19614
https://www.lucidchart.com/pages/pt/o-que-e-um-esquema-de-banco-de-dados
https://consultabd.wordpress.com/2014/11/02/restricoes-de-dominio-em-banco-de-dados/
http://www.bosontreinamentos.com.br/modelagem-de-dados/modelagem-de-dados-restricoes-de-integridade/
https://www.devmedia.com.br/algebra-relacional-tutorial/2663
https://spaceprogrammer.com/bd/introducao-ao-modelo-logico-relacional/
Sumário
Introdução ao Modelo Relacional
Esquema Relacional
Chaves - Modelo Relacional
Restrições de Integridade
Álgebra Relacional
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
3) Modelo Relacional
3.1 Introdução ao Modelo Relacional
	Definição das Nomenclaturas em Tabelas
		Exemplo Tabela 1
		Exemplo Tabela 2
	Características de uma Tabela
	
3.2 Esquema Relacional
	Esquema de uma relação
	Restrições de Domínio
	Tupla
	
3.3 Chaves - Modelo Relacional
	Funcionários
		Exemplo 01
		Exemplo 02
	Chave Primária
	Chave Estrangeira
	
3.4 Restrições de Integridade
	Tipos
	Integridade Referencial
	Restrição Integridade Referencial
		Insert
		Delete
		Update
	Restrições de inclusão
	Restrições de exclusão
	
3.5 Algebra Relacional
	Conceito
		Teoria de Conjuntos
		Operações para BD Relacionais
	Operações
		União
		Intersecção
		Diferença
	
3.6 Algebra Relacional
	Seleção
	Projeção
	Produto Cartesiano
	Junção
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Aula
Introdução ao Modelo Relacional
Este modelo capta as relações entre entidades do mundo real e é frequentemente usado para projetar um banco de dados conceitualmente.
Introdução ao Modelo Relacional
Vamos continuar vendo os conceitos básicos sobre Modelagem Relacional.
O conceito principal vem da teoria de conjuntos (álgebra relacional) atrelado a ideia de que não é relevante ao usuário saber onde os dados estão ou como eles se encontram, representado por uma coleção de tabelas (entidade/relação) é um conjunto de linhas (tuplas) uma lista de valores de atributos.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Introdução ao Modelo Relacional
O Modelo entidade relacionamento proposto por Peter P. Chen pode ser melhor compreendido por uma teoria chamada de A lei do Mundo, teoria essa, que conceitua que o mundo está cheio de coisas que possuem características próprias e que se relacionam entre si. 
Sua análise da teoria pode ser dividida em três partes:
O mundo está cheio de coisas
Que possuem características próprias
E que se relacionam entre si
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Introdução ao Modelo Relacional
O mundo está cheio de coisas
Tudo que possa ser caracterizado, conceituado, real ou imaginário, no nosso Universo (Mundo), é definido como coisa, que futuramente, dependendo da abordagem, poderá ser definido como uma entidade.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Introdução ao Modelo Relacional
Que possuem características próprias
Características comuns percebidas entre as coisas de modo que haja a possibilidade de enquadramento dessas coisas em conjuntos particulares. 
Exemplo: 
“conselho de economia, conselho de medicina, conselho de odontologia” todos podem ser enquadrados em um mesmo conjunto, denominado como Órgão normalizador.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Introdução ao Modelo Relacional
E que se relacionam entre si
São as relações entre as coisas. 
A forma de comunicação entre as coisas ou um conjunto delas.
Exemplos: 
Jorge é credenciado pelo conselho de economia é um relacionamento entre elementos de diferentes conjuntos.
Jorge é substituto de João é um relacionamento entre elementos do mesmo conjunto.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Definição de Nomenclaturas em Tabelas
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Definição de Nomenclaturas em Tabelas
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Aula
Esquema Relacional
Este modelo capta as relações entre entidades do mundo real e é frequentemente usado para projetar um banco de dados conceitualmente.
Esquema Relacional
Um esquema de banco de dados representa a configuração lógica da totalidade ou de parte de uma base de dados relacional.
Ele pode existir tanto como uma representação visual quanto como um conjunto de fórmulas conhecidas como restrições de integridade que regem um banco de dados.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Esquema Relacional
Estas fórmulas são expressadas em uma linguagem de definição de dados, como SQL.
Como parte de um dicionário de dados, um esquema de banco de dados indica como as entidades que compõem o banco de dados se relacionam entre si, incluindo tabelas, exibições, procedimentos armazenados e muito mais.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Domínio
Um domínio é um conjunto (possivelmente infinito em número) de valores definido e nomeado, do qual um ou mais atributos extraem seus valores. 
Os domínios podem ser definidos separadamente das entidades para permitir seu reuso e padronização.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Restrições de Domínio
São definidos os valores que uma coluna de uma tabela pode ter.
Tipos Primitivos de dados:
integer
float
 char
date
time
money
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Restrições de Domínio
As restrições que iremos falar são:
Primary key – Chave Primaria.
Foreign Key – Chave Estrangeira.
Foreign Key excluindo em cascata – Chave Estrangeira Excluindo em Cascata.
Check – Usando para fazer checagem de dados na tabela. Ex: Se o sexo é M ou F
Default – Define um valor padrão para o campo da tabela.
Not Null – Define que o campo não pode receber nulo.
Unique – Define que o campo é único e não pode receber valores repetidos. Ex: CPF
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Aula
Chaves
Este modelo capta as relações entre entidades do mundo real e é frequentemente usado para projetar um banco de dados conceitualmente.
Chave Primária
Atributos que representam valores únicos que identificam a entidade dentro do domínio e não podem se repetir. Em um cadastro de clientes, por exemplo, esse atributo poderia ser o CPF. 
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Chave 
Estrangeira
Atributos referenciais geralmente estão ligados à chave primária da outra entidade. 
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Aula
Restrições de Integridade
Este modelo capta as relações entre entidades do mundo real e é frequentemente usado para projetar um banco de dados conceitualmente.
Restrições de Integridade
A integridade de dados se refere à acurácia, completude e consistência dos dados armazenados em um sistema de banco de dados relacional (ou outro sistema).
Isso garante que os dados armazenados possam ser armazenados, consultados e utilizados com confiabilidade, sendo assim dados íntegros – daí o nome integridade de dados.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Restrições de Integridade
Para que seja possível garantir a integridade dos dados, é necessário conhecer e aplicar determinadas restrições de armazenamento, que chamamos de Restrições de Integridade.
Elas dizem respeito a aspectos como tipos dos dados armazenados, relacionamentos entre colunas de chave primária e estrangeira, possibilidade de haver valores nulos ou não, e regras de negócio específicas importantes requisitadas pelo cliente, por exemplo.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Tipos de Restrições de Integridade
Os tipos de restrições de integridade que estudaremos neste artigo são os seguintes:
Integridade de Domínio
Integridade Referencial
Integridade de Vazio
Integridade de Chave
Integridade Definida pelo Usuário
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.brIntegridade de Domínio
Valores inseridos em uma coluna devem sempre obedecer à definição dos valores que são permitidos para essa coluna – os valores do domínio.
Ex.: em uma coluna que armazena preços de mercadorias, os valores admitidos são do domínio numérico – ou seja, apenas números. Não há preços usando letras para sua representação.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
2) Integridade Referencial
Uma restrição de Integridade Referencial assegura que valores de uma coluna em uma tabela são válidos baseados nos valores em uma outra tabela relacionada.
Ex.: Se um produto de ID 523 foi cadastrado em uma tabela de Vendas, então um produto com ID 523 deve existir na tabela de Produtos relacionada.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
2) Integridade Referencial
Em resumo: cada valor de uma chave estrangeira deve corresponder a um valor de uma chave primária existente. Serve para manter a consistência entre tuplas de duas relações; Aparecem devido aos relacionamentos entre entidades
Vejamos um exemplo:
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Integridade Referencial
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
2) Integridade Referencial
Integridade Referencial: Atualização e Exclusão de Registros
Se um registro for excluído em uma tabela (operações DELETE e TRUNCATE), então os registros relacionados em outras tabelas que o referenciam talvez precisem ser excluídos.
Caso contrário ocorrerá erro. O mesmo se dá com a atualização de registros (operação UPDATE).
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
3) Integridade de Vazio 
Este tipo de integridade informa se a coluna é obrigatória ou opcional – ou seja, se é possível não inserir um valor na coluna.
Uma coluna de chave primária, por exemplo, sempre deve ter dados inseridos, e nunca pode estar vazia, para nenhum registro.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
4) Integridade de Chave
Os valores inseridos na coluna de chave primária (PK) devem ser sempre únicos, não admitindo-se repetições nesses valores.
Desta forma, as tuplas (registros) serão sempre distintas.
Os valores de chave primária também não podem ser nulos.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
5) Integridade Definida pelo Usuário
Diz respeito a regras de negócio específicas que são definidas pelo usuário do banco de dados. 
Por exemplo, pode-se definir que uma coluna somente aceitará um conjunto restrito de valores, como por exemplo apenas as siglas dos estados da federação, e mais nenhum outro valor diferente.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Aula
Álgebra Relacional
Este modelo capta as relações entre entidades do mundo real e é frequentemente usado para projetar um banco de dados conceitualmente.
Álgebra Relacional
Linguagens de consulta formal são linguagens em que o usuário solicita informações à base de dados. Geralmente formam uma linguagem de mais alto nível que as linguagens de programação.
A Álgebra Relacional é uma linguagem de consulta formal, porém procedimental, ou seja, o usuário dá as instruções ao sistema para que o mesmo realize uma sequência de operações na base de dados para calcular o resultado desejado.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Álgebra Relacional
A Álgebra Relacional define operadores para atuar nas tabelas (semelhante aos operadores +, - etc. da álgebra que estamos acostumados) para chegar ao resultado desejado.
A forma de trabalho desta linguagem de consulta é a de pegar uma ou mais tabelas (conforme necessidade) como entrada de dados e produzirá uma nova tabela como resultado das operações.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
Funções da Álgebra Relacional
São definidas nove operações para se trabalhar com álgebra relacional:
Union –União;
Intersection– Intersecção;
Difference– Diferença, Subtração;
Product – Produto, Produto Cartesiano.
Select– Seleção;
Project– Projeção;
Join– Junção;
Divide – Divisão.
Assignment– Designação, Atribuição.
 UNEX - Prof. Pedro - pedro.borges@ftc.edu.br
image2.png
image1.png
image7.png
image3.png
image5.png
image6.png
image4.png

Continue navegando