Buscar

Aula 02 - Modelo Relacional

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Aula 02 - Modelo Relacional 1
Aula 02 - Modelo Relacional
Apresentação
Os sistemas de gerenciamento de banco de dados, ou SGBDs, são conjuntos 
de softwares utilizados para o gerenciamento de uma base de dados, ou seja, 
são os programas utilizados para controlar, organizar, acessar e proteger as 
informações de uma empresa.
Nos maiores SGBDs comerciais, o modelo de dados lógico utilizado é o 
relacional, que será objeto de estudos desta aula. Além disso, estudaremos a 
álgebra relacional, que define as operações que podemos realizar dentro do 
modelo relacional.
Apresentação
Objetivos
Modelo relacional
Conceitos do modelo relacional
Relação
Atributo
Domínio
Esquema
Tupla
Instância
Campo
Valor
Nulo
Chave primária
Único
Obrigatório
Chaves candidatas
Chave simples
Chave composta
Por que isso foi necessário?
Chave estrangeira
Integridade referencial
Álgebra relacional
Referências
Saiba mais
Aula 02 - Modelo Relacional 2
Objetivos
Descrever o modelo relacional;
Escrever expressões de álgebra relacional.
Modelo relacional
O modelo relacional de dados foi proposto por Edgar Codd em 1970, 
baseando-se em conceitos matemáticos para proporcionar uma representação 
confiável para bancos de dados.
O modelo relacional se propõe a representar os dados em uma coleção de 
relações. Dessa forma, as relações são vistas como tabelas de valores, nas 
quais cada linha representa uma coleção de dados relacionados. Esses valores 
podem ser interpretados como fatos, descrevendo uma instância de uma 
entidade ou de um relacionamento do mundo real.
Os nomes da tabela e das colunas são utilizados para facilitar a interpretação 
dos valores armazenados em cada linha da tabela.
Edgar Frank Codd (Dorset, 23 de 
agosto de 1923  Flórida, 18 de 
abril de 2003 foi 
um matemático britânico conhecido 
por desenvolver o banco de dados 
relacional.
Conceitos do modelo relacional
A seguir conheceremos alguns conceitos importantes. Vamos lá.
Relação
Aula 02 - Modelo Relacional 3
No modelo relacional, uma relação é uma tabela onde são armazenados dados. 
Por exemplo, podemos ter em nosso banco de dados as relações 
DEPARTAMENTO e REGIÃO, que armazenam, respectivamente, os dados dos 
departamentos e das regiões.
As relações apresentam as seguintes características:
Não possuem duas linhas iguais.
Os atributos devem possuir valores atômicos (indivisíveis).
Atributo
Os atributos de uma relação constituem as colunas da tabela. Por exemplo, na 
tabela DEPARTAMENTO temos os atributos ID, NOME e ID_REGIAO. É 
importante ressaltar que todo atributo possui um domínio.
O conjunto dos atributos de uma tabela constituem o seu esquema.
Aula 02 - Modelo Relacional 4
Domínio
O domínio consiste de um conjunto de valores válidos para um determinado 
atributo. Como, por exemplo, o domínio do atributo NOME na tabela de 
departamentos é constituído dos nomes válidos de departamento na empresa.
Todo atributo possui um domínio, no mínimo constituído pelo seu tipo, 
numérico, alfanumérico, data etc. Dessa forma, todos os valores em uma 
coluna são necessariamente do mesmo tipo. O fato de os atributos respeitarem 
o seu domínio é denominado integridade de domínio.
Esquema
O esquema de uma relação descreve a sua estrutura, sendo constituído pelo 
conjunto de seus atributos e suas restrições. Por exemplo: O esquema da 
tabela DEPARTAMENTO é composto de ID, NOME e ID_REGIAO, ou seja, 
Departamento ID, NOME, ID_REGIAO.
Aula 02 - Modelo Relacional 5
Tupla
As tuplas de uma relação constituem as linhas da tabela. Por exemplo, na 
tabela DEPARTAMENTO a linha do departamento de vendas constitui uma tupla 
da relação. O conjunto das tuplas de uma tabela constitui a sua instância.
Instância
A instância é composta pelo total dos valores de seus atributos, consistindo, 
na prática, no conjunto dos dados armazenados no BD. Por exemplo, na tabela 
DEPARTAMENTO a instância é formada pelas suas quatro linhas, ou seja, pelos 
dados dos departamentos de vendas, operações, administrativo e financeiro.
Campo
O campo de uma relação é definido como a área de interseção entre um 
atributo (coluna) e uma tupla (linha). Por exemplo, na figura vemos a 
delimitação do campo NOME na segunda linha da tabela. Todo campo possui 
um valor.
Aula 02 - Modelo Relacional 6
Valor
O valor de um campo é o seu conteúdo. Por exemplo, na figura vemos que o 
valor do campo NOME na segunda linha é OPERAÇÕES. Quando um campo não 
possui um valor dizemos que ele é nulo.
Nulo
Quando afirmamos que o valor de um campo é nulo, estamos afirmando que ali 
não existe nada. Nulo, não zero.
Nulo não é um espaço em branco, não é sequer um valor. Nulo é ausência de 
valor que pode se originar do fato de não sabermos, ou de não existir o valor a 
ser colocado.
Aula 02 - Modelo Relacional 7
Por exemplo, na figura vemos que o valor do campo CPF da última linha da 
tabela DEPENDENTES é nulo, ou seja, ali não há valor algum. Agora, por que 
isso aconteceu? Vamos supor que Carlos Ventura tenha mais de 18 anos, 
então, por lei deveria ter CPF, mas quando fomos cadastrá-lo no banco de 
dados não sabíamos o número de seu CPF, então não colocamos nada. Outra 
situação seria o fato de Carlos Ventura ser uma criança de 5 anos, que 
obviamente não possui CPF.
Cabe ressaltar que somente é possível deixar nulos campos de atributos não 
obrigatórios.
Chave primária
Uma chave primária é o atributo da relação utilizado para identificar 
unicamente uma tupla. É normalmente denominada PK do termo em 
inglês primary key.
Um atributo, para ser chave primária, deve obrigatoriamente 
ser único e obrigatório.
A chave primária é escolhida entre as chaves candidatas de uma relação e 
pode ser simples ou composta. Por exemplo, a figura mostra as colunas ID das 
tabelas DEPARTAMENTO e REGIÃO constituindo suas chaves primárias.
Uma observação importante é que embora os SGBD permitam a criação de 
tabelas sem chave primária, o modelo relacional prevê que toda relação deve 
possuir uma PK.
Aula 02 - Modelo Relacional 8
Único
Quando afirmamos que uma PK deve ser única, significa que nenhuma tupla de 
uma mesma relação pode ter o mesmo valor para o atributo escolhido como 
chave primária. Isso é denominado integridade de chave primária.
Se observarmos as tabelas anteriores, veremos que o valor do ID na tabela 
DEPARTAMENTO não se repete. De fato, se tivéssemos valores repetidos na 
coluna ID, como poderíamos identificar a tupla?
Na próxima tabela, vemos que existem duas linhas com o mesmo valor de ID 
20. Se desejamos nos referir ao Departamento 20, teríamos uma dúvida: O 
departamento 20 que desejamos é o de OPERAÇÕES ou o ADMINISTRATIVO?
Obrigatório
Aula 02 - Modelo Relacional 9
O valor da chave primária não pode ser vazio, ou seja, não pode ser nulo. O 
valor nulo não permite a identificação de uma tupla. Essa restrição é 
denominada integridade de entidade.
De fato, a chave primária serve como representante na base 
de dados de uma entidade. Se a chave primária for vazia, a 
linha não corresponde a nenhuma entidade.
Observe a tabela. Repare que todas as linhas possuem um valor na coluna ID 
tanto na tabela DEPARTAMENTO quanto na tabela REGIÃO
Observe a próxima tabela.
Aula 02 - Modelo Relacional 10
Como poderíamos identificar uma região se existissem na tabela várias linhas 
com ID nulo? Como poderíamos referenciar a primeira linha e a última?
Por isso uma PK não pode ser nula.
Chaves candidatas
É o atributo ou conjunto de atributos de uma relação que permite identificar a 
linha de forma única. Uma delas será escolhida como chave primária, a partir 
da qual o SGBD irá manter automaticamente a restrição de unicidade.
Da mesma forma que a chave primária, uma chave candidata pode 
ser simples ou composta.
Na tabela DEPARTAMENTO, a seguir, possuímos duas chaves candidatas 
simples, a coluna ID e a coluna NOME, pois ambas possuem valores únicos e 
não nulos, e qualquer um deles pode ser PK da tabela:
Aula 02 - Modelo Relacional 11
Chave simples
Dizemos que uma chaveprimária é simples quando é composta por apenas um 
atributo. Podemos notar que tanto na tabela DEPARTAMENTO como na tabela 
REGIÃO a PK é composta apenas pela coluna ID, que, por possuir valores 
únicos e não nulos, permite a identificação de forma unívoca da linha.
Chave composta
Dizemos que uma chave primária é composta quando possui mais de um 
atributo.
No exemplo a seguir, a tabela Dependentes possui uma PK composta pela 
coluna “Responsável” e pela coluna “Id”.
Aula 02 - Modelo Relacional 12
Por que isso foi necessário?
Como uma PK deve ser única e não nula, ao analisarmos a tabela em busca de 
uma chave candidata podemos observar que:
 A coluna “Responsável” é obrigatória, mas pode possuir valores repetidos.
 A coluna “Id” é obrigatória, mas pode possuir valores repetidos.
 A coluna “Id” é obrigatória, mas pode possuir valores repetidos.
 A coluna “Grau” é obrigatória e pode possuir valores repetidos.
 A coluna “CPF” apesar de ser única pode possuir linhas nulas.
A análise mostra que não temos como fazer uma PK simples, 
mas se considerarmos o par “Responsável/Id”, não existirá 
repetição, pois para um mesmo “Responsável” o valor de “ID” 
não se repete. O que permite que criemos uma PK 
composta.
Chave estrangeira
É quando um atributo de uma relação é chave primária PK em outra.
É normalmente denominada FK do termo em inglês foreign key, constituindo-se 
na ligação lógica entre as tabelas, implementando fisicamente os 
Aula 02 - Modelo Relacional 13
relacionamentos da modelagem conceitual.
Através das operações com as chaves estrangeiras, garante-se a integridade 
referencial do banco de dados. Por exemplo, a seguir vemos que a coluna 
ID_REGIAO na tabela DEPARTAMENTO é uma chave estrangeira para a tabela 
REGIÃO na coluna ID.
Integridade referencial
A Integridade referencial determina que as chaves estrangeiras FK têm que 
ser respeitadas, ou seja, se existe um determinado valor para o atributo na 
tabela onde ele é chave estrangeira, esse valor deve existir na tabela em que 
ele é chave primária.
⚠ Nas tabelas anteriores podemos observar que todos os valores do 
atributo ID_REGIAO na tabela DEPARTAMENTO existem no atributo ID 
PK da tabela REGIÃO. Se tentássemos inserir na tabela 
DEPARTAMENTO um valor de ID_REGIAO = 4, o SGBD acusaria um 
erro de violação de chave estrangeira e não permitiria a inserção da 
linha.
Álgebra relacional
A álgebra relacional é uma coleção de operações canônicas que são utilizadas 
para manipular as relações. Essas operações são utilizadas para selecionar 
tuplas de relações individuais e para combinar tuplas relacionadas de relações 
diferentes para especificar uma consulta em um determinado banco de dados. 
Aula 02 - Modelo Relacional 14
O resultado de cada operação é uma nova relação, a qual também pode ser 
manipulada pela álgebra relacional.
💡 Antes de encerrar seus estudos, conheça detalhadamente 
as principais operações da álgebra relacional.
Referências
CODD, E. F. A relational model of data for large shared data banks. In: 
______. Communications of the ACM, Nova Iorque, v. 13, n. 6, p. 377387, jun. 
1970.
DATE, C. J. Introdução a sistemas de banco de dados. 7. ed. Rio de Janeiro: 
Campus, 2000.
ELMASRI, R.; NAVATHE, S. B. Sistemas de banco de dados. 6. ed. São Paulo: 
Pearson Addison Wesley, 2011.
SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistemas de banco de 
dados. 5. ed. Rio de Janeiro: Campus, 2006.
Saiba mais
Pesquise na internet sites, vídeos e artigos relacionados ao conteúdo visto.
Em caso de dúvidas, converse com seu professor online por meio dos recursos 
disponíveis no ambiente de aprendizagem.
Leia os textos:
Modelagem relacional;
O modelo relacional de dados – Parte I;
O que é um modelo de banco de dados?
https://www.devmedia.com.br/modelagem-relacional/19614
http://www.linhadecodigo.com.br/artigo/109/o-modelo-relacional-de-dados-parte-i.aspx
https://www.lucidchart.com/pages/pt/o-que-e-um-modelo-de-banco-de-dados?a=0

Outros materiais