Buscar

UNIDADE 4 - PARTE 1

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 3, do total de 24 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

Você também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 6, do total de 24 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

Você também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 9, do total de 24 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

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

MODELAGEM DE DADOS 
 
 
 
 
 
 
UNIDADE 4 
 
Modelo Lógico Relacional 
 
(PARTE 1) 
 
 
 
 
 
 
PROFA. GELLARS TAVARES 
 
gellarstavares@yahoo.com.br 
 
 
 
 
 
2012 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
2
 
 
TÓPICOS 
 
 Introdução 
 
 Conceitos Básicos ( tabelas, atributos, campos, tuplas); 
 
 Integridade Referencial; 
 
 Chaves Candidata, Chave Primária e Chave Estrangeira. 
 
 
REFERÊNCIAS 
 
"HEUSER, C. Projeto de Banco de Dados. Editora Artmed, 6ª Ed., 2009, Série 
de Livros Didáticos, número 4. 
 
"SILBERSCHATZ, A., e KORTH, S. e SUDARSHAN, S. Sistema de Banco de 
Dados, 5a edição, Editora Campus, 2006. 
 
"ELMASRI, R.; NAVATHE, S., Sistemas de Banco de Dados. Pearson Education 
do Brasil, 6ª. Ed. 2011. 
 
 
 
 
INTRODUÇÃO 
 
 
• Abordagem de modelagem de dados usada nos SGBD do tipo relacional. 
• Foi definido em 1970 por Edgar Frank Codd na IBM. 
 – Os primeiros sistemas relacionas são de 1977-78. 
 – Sua aceitação comercial ocorreu em meados de 1980 (±1987). 
• Principais razões para sua grande aceitação: 
 – Simplicidade: Fundamentado na teoria dos conjuntos. 
 – Expressividade/formalismo: Operadores baseados na álgebra relacional. 
 
 Principal conceito vem da teoria de conjuntos (álgebra relacional), combinado com a idéia 
que não é relevante ao usuário saber onde os dados estão nem como os dados estão. 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. 
 
 
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
3
 
Modelo relacional lógico: 
 
Ö Segundo nível na arquitetura de três esquemas. 
Ö Requer que todos os dados estejam em tabelas ou relacionamentos. 
Ö Interliga tabelas utilizando “chaves primárias”. 
 
 
Vantagens da abordagem relacional: 
 
Ö Independência total dos dados. 
Ö Visão múltipla dos dados. 
Ö Redução acentuada na atividade de desenvolvimento de aplicações e o tempo gasto 
em manutenção. 
Ö Melhoria na segurança dos dados. 
Ö Maior agilidade na questão gerencial da informação ligada ao processo decisório da 
organização. 
 
 
Características do Modelo Relacional 
 
 1- Uma tabela é acessível por qualquer campo (atributo) independente se este é declarado 
 como chave ou não; 
 2- O relacionamento entre conjunto de dados (tabelas) não existe fisicamente, pois este 
 relacionamento é apenas lógico e representado através das chaves estrangeiras; 
 3- Utilização de linguagens auto-contidas e não procedurais; 
 4- Os ambientes relacionais possuem um otimizador estratégico para escolher o melhor 
 caminho para recuperação dos dados. 
 
 
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> de tal que para i=1,2,...,n di pertence a Di. 
 
z Conseqüências da definição matemática 
 
Ö Relação é um conjunto: 
ƒ Não ordenação de Tuplas 
ƒ A mesma Tupla não aparece duas vezes 
 
Ö Definição é teórica 
ƒ Não é conveniente se referenciar aos elementos de uma tupla através de sua 
posição. 
ƒ Melhor é usar nomes (nome dos atributos ou nomes das colunas). 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
4
 
DEFINIÇÕES: 
 
· 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 pertencem 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. 
 
 
 
z O Diagrama ER é a mais alta representação conceitual dos dados de uma organização. 
Ö ER é uma representação independente de como o banco de dados está implementado. 
Ö Pode suportar banco de dados relacional, hierárquico, rede ou orientado a objetos. 
 
z Banco de Dados Relacional é composto de: 
Ö Tabelas que se compõe de atributos. 
Ö Uma tabela é também chamada de relação. 
Ö As instâncias da tabela ou relação são chamadas de tupla. 
Ö Em um banco de dados relacional as tuplas não podem ser repetidas. (Ou seja, não 
são permitidas tuplas iguais). 
 
Î Uma forma de garantir a unicidade das tuplas é estabelecer a chave de cada tabela. 
 
• O modelo relacional é um modelo lógico, onde os dados são representados por relações. 
 
• Neste modelo, um banco de dados é visto como um conjunto de relações. 
 
• Os dados em uma relação representam fatos reais a respeito de uma entidade ou de um 
relacionamento do mundo real. 
 
 
PRINCÍPIO BÁSICO: 
 
– “As informações em uma base de dados podem ser consideradas como relações matemáticas e 
estão representadas de maneira uniforme, através do uso de TABELAS”. 
 
 
DEFINIÇÃO CLÁSSICA: 
 
– “São conjuntos de dados vistos segundo um conjunto de TABELAS e as operações sobre elas 
(tabelas) são feitas por linguagens que manipulam a álgebra relacional, manipulando conjuntos de 
uma só vez”. 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
5
 
ESTRUTURA BÁSICA 
 
• Tabelas (ou Relações) 
 
 – Compostas de 
 • Linhas (ou tuplas) 
 • Colunas (ou atributos) 
 • Chaves primárias (identificador) 
 – Relacionadas através de 
 • Chaves estrangeiras (relacionamento) 
 
 
• Um banco de dados relacional consiste de uma coleção de tabelas de nomes únicos. 
 – O conceito de tabelas está intimamente ligado ao conceito de uma relação matemática – de 
 onde se origina o nome deste modelo. 
 
• Uma tabela é formada por: 
 – um conjunto de colunas denominadas de atributos. 
 • Para cada atributo existe um conjunto de valores permitidos, chamado de domínio. 
 – um conjunto de linhas denominadas de tuplas. 
 
Noções intuitivas de esquema e instância: 
 
 
 
 
Modelo Intuitivo 
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
6
 
 
Representação da tabela utilizada no modelo relacional 
 
Esquema 
 
 
Tabela com dados utilizada no modelo relacional 
 
 
 
 
Tipos de representações de tabela no modelo relacional 
 
 Alunos 
matrícula nome endereço
 
Esquema de Relação “Aluno”: 
 
 Alunos (matrícula, nome, endereço) 
 
Possível relação: 
 R(Alunos) = (<1085123, José, Av.das Flores,25>, 
 <1078987, Antônio, R.13 de Maio, 345>, 
 <1089771, Maria, R.Dunlop,11>) 
 
Esquema de Relação R (intenção) – mudanças pouco freqüentes 
Relação R(extensão) – mais dinâmica 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
7
Ö Tabela: composta por linhas (tuplas) e colunas (atributos). 
 
Ö As ligações entre linhas de diferentes tabelas são feitas através do uso de valores de 
 
Ö Valor do campo é monovalorado.
, Estado Civil, UF refere-se apenas a um único 
e aluno é monovalorado 
o 
 
 ¾A maioria dos atributos são Monovalorados. 
 Linhas de uma tabela não são ordenadas. 
 
OMÍNIO (D) 
 Conjunto de valores permitidospara um dado 
ng (domínios básicos) 
nidos) 
 É uma coleção de valores atômicos (isto é, valores “indivisíveis”) admissíveis para cada atributo. 
 Para cada domínio existem operações válidas: 
...) 
, ...) 
 É possível que vários atributos de uma relação possuam o mesmo domínio. 
 Os domínios, em geral, são designados como tipo de dados, que especificam a formação dos 
• Nomes dos clientes [o conjunto de nomes possíveis de pessoas; caractere formato A(50)]. 
real do 
 Apenas valores que pertençam ao mesmo domínio podem ser comparados. 
 
 
atributos. 
 
 ► O atributo IDADE, Sexo
 valor. 
►Idade d
►Irmãos de aluno são multivalorad
 
 
Ö
 
 
D
 
•
 – Exemplos 
 • inteiro, stri
 • data, hora (domínios compostos) 
 • [0, 120], (‘M’, ‘F’) (domínios defi
 
•
 – O Modelo Relacional sempre assume que os valores são atômicos. 
 
•
 – inteiro (somar, dividir, i1 maior que i2, 
 – data (extrair dia, extrair mês, d1 anterior a d2
 
•
 
•
valores. 
– Ex: 
 
 • Números das contas [o conjunto de números de 1 a 9999; inteiros do formato 9(4)]. 
 • Valores dos saldos das contas [o conjunto de números de -9999,99 a +9999,99 ; 
 formato 9(4),9(2)]. 
 
•
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
8
TRIBUTO OU COLUNA 
 Um item de dado do BD 
 Possui um nome e um domínio 
g 
 
INHA OU TUPLA 
 Um conjunto de pares (atributo, valor) 
– define uma ocorrência de um fato do mundo real ou de um relacionamento entre fatos 
 No m
 Os valores definidos devem: 
– Ser compatíveis com o domínio de cada atributo ou ser NULL 
uturados e mono valorado) 
– aluno: {(nome, ‘João’), (idade, 34), (matrícula, 03167034)} 
 Um valor da tupla pode ser “desconhecido” ou “indefinido”, sendo assim chamado de “null” ou 
od_artista, nome_artista, data_nasc,cidade, país) 
 A característica do nulo poderá ser interrogada em consultas ou atualizada com valores válidos, 
 
 
A
 
•
 
•
 – Exemplos 
 • nome: strin
 • idade: [0,120]
 
 
L
 
 
•
 
 
• omento da criação de uma tupla, valores são definidos para cada atributo 
 
•
 
 
 (valor inexistente ou indeterminado) 
 – Ser Atômicos (indivisíveis: não-estr
• Exemplos 
 
 
 
 
•
valor nulo 
 
(c
(1,’Julia Roberts’,’23/09/66’,’Boston’,’USA’) 
(2,’Tom Hanks’, null, null, ‘USA’) 
 
 
•
mudando, assim, o status do campo. 
 
 
 
 
 
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
9
 
ROPRIEDADES DE UMA RELAÇÃO 
 A ordem dos atributos é importante, se for necessária a correspondência entre os mesmos e seus 
od_artista,nome_artartista,data_nasc,cidade, país) 
 Não há tuplas duplicadas em uma mesma relação. 
xatamente os mesmos valores. 
 Cada relação possui um número fixo de atributos, todos com nomes distintos. 
 As tuplas de uma relação não são ordenadas. 
 arbitrária. 
ficado explicitamente uma ordenação. 
 
 
 
 
 
P
 
•
respectivos valores. 
 
(c
(1,’Julia Roberts’,’23/09/66’,’Boston’,’USA’) 
 
 
•
 – Não deve haver duas linhas na tabela com e
 
•
 
•
 – A ordem de recuperação pelo SGBD é
 – A não ser que a instrução de consulta tenha especi
 
 
 
 
 
 
 
 
 
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
10
 
OMECLATURAS 
 Terminologias Utilizadas 
 Mais sinônimos: 
 = Arquivo 
o 
tributo = Valor de Campo 
SQUEMA (R) (ou Relação) 
 Composto por um cabeçalho e um corpo 
ero fixo de atributos (grau da relação) 
 Corpo
cardinalidade da relação) 
 Definição formal 
o do produto cartesiano de todos os domínios D1 X D2 X... X Dn de atributos. 
 Logo
o em um BD é chamada tabela. 
 
 
 
 
N
 
•
 
 
 
 
•
– Tabela = Relação
– Linha = Tupla = Registro 
– Coluna = Atributo = Camp
– Valor de Coluna = Valor de A
 
 
 
E
 
 
•
• Cabeçalho 
 – núm
 – atributos não-ambíguos 
• 
número variável de tuplas ( – 
 
•
 – subconjunt
• , relação é um conjunto 
 – na prática, uma relaçã
 • uma tabela admite uma coleção de tuplas. 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
11
 O esquema de uma relação/tabela é a definição de seu nome e da sua estrutura (atributos com seus 
 Esquema de relação: 
n Dn] onde 
ema 
utos de R 
 Notação simplificada: 
e omite-se a definição do domínio, adotando-se a notação simplificada 
xemplos: 
rofessor[Matr char(6), Nome char(20)] 
utra forma de representação: 
 
SQUEMA RELACIONAL 
 Esquema Relacional: é a lista de esquemas de relação que compõe o BD. 
 Exemplo: 
fessor[Matr char(6), Nome char(20)] 
 O esquema geral de um SGBD relacional deve conter no mínimo: 
m 
 Um esquema costuma ser pouco atualizado. 
ção. 
tantemente atualizada. 
 As notações do “esquema” variam de um SGBD para outro. 
 
•
domínios) 
 
•
 – R[A1 D1,...,A
 • R é o nome do esqu
 • A1,...,An é a lista de atrib
 • Di é o domínio de Ai 
 
•
 – Freqüentement
 R[A1,...,An]. 
 
E
 
P
 
O
 
 
 
 
E
 
•
 
•
 – Pro
 – Disciplina[Cod char(5), Nome char(10)] 
 – Coordena[Matr char(6), Cod char(5)] 
 
•
 – Tabelas que formam o banco 
 – Colunas que as tabelas possue
 – Restrições de Integridade 
 
•
 – Já que ele é a definição de cada rela
 – Uma instância, por sua vez, pode ser cons
 
•
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
12
HAVES 
 Conceito usado para especificar restrições de integridade básicas de um SGBD relacional. 
Ö Designa o conceito de item de busca, isto é, um atributo ou conjunto de atributos que 
Ö 
 
 Três tipos: 
– Chave Primária (PK - Primary Key) 
) 
 Alternative Key) 
HAVE PRIMÁRIA 
 É uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais 
 A chave primária não pode ter valor nulo (desconhecido). 
 A chave primária deve ser mínima. 
– Todas as suas colunas são efetivamente necessárias para garantir o requisito de unicidade 
Ö Chave primária: 
especial da chave candidata. É a escolhida entre as candidatas para 
 
 Também chamada de PK (Primary Key). 
nos: matrícula 
tado) 
xemplo: 
 
 
C
 
•
 
será utilizado nas consultas à base de dados. 
É um conceito lógico da aplicação. 
•
 
 
 – Chave Estrangeira (FK - Foreign Key
 – Chave Alternativa (ou candidata) (AK –
 
C
 
•
dentro de uma tabela. 
 
•
 
•
 
 
de valores. 
 
– É um caso 
identificar unicamente uma tupla. 
•
Exemplos: 
 – alu
 – cidades: (nome, es
 
E
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
13
 Na tabela DEPENDENTES acima, a chave primária é composta (colunas CódigoEmp e 
z enas um dos valores dos campos que compõem a chave não é suficiente para 
 
xemplo: 
 
z Nas definições formais de chave primária, exige-se que essa seja mí ma (para garantir o 
 todas as suas colunas são efetivamente necessárias para garantir o 
z Na abo pregado com uma conotação diferente 
do um 
z Ao def nhum caminho de acesso. Está se 
 
HAVE ESTRANGEIRA 
 Uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave 
 Mecanismo que permite a implementação de relacionamentos em um banco de dados relacional. 
 As chaves estrangeiras constituem um conceito de vital importância no modelo relacional. São os 
 Estrangeira por quê? 
rtencente a uma tabela; 
igem, mas sim no local para onde foi migrada 
 Também chamada de FK (Foreign Key) 
 exemplos 
nos: curso (referência a um código de curso) 
 
z
NoDepend). 
Neste caso, apdistinguir uma linha das demais. 
E
 
 
ni
requisito de unicidade); 
– Chave mínima →
requisito de unicidade de valores da chave; 
rdagem relacional, o termo “chave” é em
daquela usada na área de organização de arquivos e em alguns sistemas operacionais; 
– Em arquivos convencionais, chave é qualquer coluna sobre a qual será defini
índice ou algum outro tipo de estrutura de acesso; 
inir uma chave primária, não está se definindo ne
definindo apenas uma restrição de integridade, isto é, uma regra que deve ser obedecida 
em todos estados válidos do BD (unicidade); 
 
C
 
•
primária de outra tabela. 
 
•
 
●
elos de ligação lógica entre tabelas (relacionamentos). 
 
•
 – É uma chave pe
 – Mas ela não está no seu local de or
 (estrangeiro). 
 
•
 
•
 – alu
 – cursos: código 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
14
xemplo 
 
xemplo 
 
xemplo 
 
 
E
 
 
 
E
 
 
E
 
 
 
 
 
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
15
alidação pelo SGBD 
 existência de uma chave estrangeira impõe restrições que devem ser garantidas ao executar 
 Quando da inclusão de uma linha na tabela que contém a chave estrangeira 
 referenciada em 
 alteração do valor da chave estrangeira 
e aparecer na coluna da chave primária 
exclusão de uma linha da tabela que contém a chave primária referenciada pela 
chave estrangeira não deve aparecer o valor da chave primária que está sendo 
xclusão não poderá ser efetuada, visto que possui registros dependentes de sua 
a alteração do valor da chave primária referenciada pela chave estrangeira 
 chave 
 Chave Estrangeira na mesma tabela (Auto-Relacionamento) 
 
z A palavra “estrangeira” usada para denominar este tipo de chave pode ser enganosa; 
e outra 
z ave primária pode referenciar a chave primária da própria tabela. 
 
 
 
V
 
A
diversas operações de alteração do banco de dados: 
 
–
 • O valor da chave estrangeira deve aparecer na coluna da chave primária
outra tabela. 
– Quando da
 • O novo valor de uma chave estrangeira dev
referenciada. 
– Quando da 
chave estrangeira 
 • Na coluna 
excluída ou. 
 • A e
existência. 
- Quando d
 • Deve ser garantido que na coluna chave estrangeira não apareça o antigo valor da
primária que está sendo alterada. 
 
•
 
 
 
z Ela pode levar a crer que a chave estrangeira sempre referencia uma chave primária d
tabela; 
Uma ch
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
16
HAVE ALTERNATIVA OU CANDIDATA 
 Mais de uma coluna ou combinações de colunas podem servir para distinguir uma linha das 
 Uma das colunas (ou combinação de colunas) é escolhida como chave primária, as demais colunas 
 Cuidado: Chave Alternativa não faz relacionamento com Chave Estrangeira! 
Ö Chave Alternativa ou Candidata: 
enhuma tupla de uma mesma relação pode ter o 
– data pode ter 
– 
ples: quando é composta por apenas um atributo. 
mar a chave. 
 
 Exemplo: “Escolha a Chave Primária da Tabela ELEITOR”, cujos atributos são: 
 Nome do Eleitor 
tidade 
 de Eleitor 
 Tabela: ELEITOR 
didatas: 
tulo de Eleitor 
a: 
 Eleitor 
xemplo de chave alternativa 
 
 
C
 
•
demais. 
 
•
ou combinações são denominadas chaves alternativas. 
 
•
 
– Deve ser única, ou seja, n
mesmo valor para o atributo escolhido como chave candidata. 
Deve ser irredutível, nenhum subconjunto da chave candi
sozinha a propriedade de ser único. 
Pode ser: 
x Sim
x Composta: quanto possui mais de um atributo para for
•
 
–
– Junta Eleitoral 
– Seção Eleitoral 
– Número de Iden
– Número de CPF 
– Número do Título
 
•
 – Chaves Can
 • Número do Tí
 • Número de Identidade 
 • Número de CPF 
 – Chave Primária Escolhid
 • Número do Título de
 
E
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
17
 
 
 
CHAVE SECUNDÁRIA (Secondary Key) 
 
● Serve para definir uma segunda chave primária. Identifica um item de busca. 
● No ambiente tradicional, só se pode acessar um registro se declarar que aquele campo é chave. 
● No ambiente relacional, uma tabela é acessível por qualquer campo (atributo) independente de ser 
chave ou não. 
 Para cada chave secundária declarada, o ambiente relacional cria um índice (estratégia de acesso). 
 Em organização de arquivos, o termo chave secundária é usado para um campo ou conjunto de 
ite duplicatas; 
have possui a conotação de restrição de integridade e 
ampo; 
po pode assumir o valor especial vazio (“null” em inglês) 
is não são admitidos valores vazios são chamadas de colunas obrigatórias 
uais podem aparecer valores vazios são chamadas de colunas opcionais 
, evitar que o BD entre em um estado inconsistente. 
 Para mo de restrições 
e inte
egra de consistência de dados que é garantida pelo próprio 
●
●
campos para os quais existe um índice que adm
 Na abordagem relacional, o conceito de c●
não de caminho de acesso; 
● Por este motivo, o termo chave secundária não é usado na abordagem relacional; 
 
 
VALOR NULO 
 
 
 Quando uma tabela de BD é definida, para cada coluna da tabela, deve ser especificado um 
conjunto de valores (alfanumérico, numérico, etc.) que os campos da respectiva coluna podem 
assumir; 
Este conjunto de valores é chamado de domínio da coluna ou domínio do c 
 
• Um valor de cam
 Colunas nas qua•
• Colunas nas q
 O nu● ll não é zero nem caractere branco. 
• Abordagem relacional 
 – Todas as colunas que compõem a chave primária devem ser obrigatórias. 
 – As colunas que compõem as demais chaves podem ser opcionais 
 
 
RESTRIÇÕES DE INTEGRIDADE 
 
• Objetivo primordial de um SGBD 
ridade de dados. Isto é – Garantir a integ
 
 mecanis• garantir a integridade de um banco de dados, os SGBD oferecem o
gridade. d
 
• Uma restrição de integridade é uma r
GBD. S
 
 Restri• ções de integridade são checadas pelo SGBD quando o BD sofre qualquer modificação. 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
18
ntegridade básicas 
– Integridade de domínio 
 Integridade de vazio 
– Integridade referencial 
 Integridade de Domínio 
 Especifica que para uma coluna A de uma tabela, todo valor associado a A deve ser atômico e 
buto devem pertencer ao domínio do atributo. 
 Em S suário pode definir domínios próprios de sua aplicação (Exemplo: 
ias da semana ou unidades da federação). 
 Especifica que os valores das chaves primárias devem ser únicos (não podem existir tuplas 
 Integridade de vazio 
e uma tabela podem receber valores nulos. 
• Campo Opcional 
 Os campos que compõem a chave primária não podem ser nulos. 
 aparecer na chave primária da tabela 
 
 
• Restrições de i
 
 – Integridade de chave 
 –
 
 
►
 
–
pertencer ao domínio desta coluna. 
 
– Ou seja, os valores de um atri
 
● GBD’s mais recentes, o u
d
 
 
► Integridade da chave 
 
–
duplicadas em uma relação) e não vazio. 
 
– Ou seja, não podem existir em uma tabela, duas linhas com o mesmo valor de chave primária. 
 
►
 
– Controla quais colunas d
 
– Ou seja, especifica se o valor de um campo pode ser nulo. 
 • Campo Obrigatório 
 
 
–
 
 
► Integridade referencial 
 
– Especifica que os valores de uma chave estrangeira devem
referenciada. 
 
 
 
 
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
19
es de integridade básicas são garantidas automaticamente por um SGBD relacional.Não é exigido que o programador escreva procedimentos para garanti-las explicitamente. 
 Porém, há muitas outras restrições de integridade que não se encaixam nas categorias básicas. 
– Essas restrições são chamadas de restrições semânticas (ou regras de negócio). 
 Exemplos de restrições semânticas: 
– Um empregado não pode ter um salário maior que seu superior imediato. 
─ Um empregado do departamento denominado “Finanças” não pode ter a categoria 
 Dife as pelos 
rogramadores ou definidas através de triggers (gatilhos). 
z 
z 
z 
idade referencial 
tegridade de entidade: 
enhum deles pode ser nulo 
xemplo: 
 
 
 
 
• Essas restriçõ
 
•
 
•
 
 
•
 
 
 – O número máximo de horas que um empregado pode trabalhar por semana é 44 horas. 
 
 funcional “Engenheiro”. 
 
 
• rente das restrições de integridade básicas, estas devem ser implementad
p
 
 
Regras sobre os valores que podem ser armazenados nas relações 
 Tem por objetivo garantir a consistência 
 Quando definidas, devem ser sempre satisfeitas na base de dados 
z Integridade de entidade e integr
 
In
z a chave primária não pode ser nula em nenhuma tupla de qualquer relação 
z se a chave for composta por mais de um atributo, n
 
E
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
20
 
Esquema do BD Relacional 
 
empregado (CPF_empregado, nome_empregado, cod_supervisor, sigla_depto, data_início) 
dependente (CPF_empregado, nome_dependente, sexo_dependente) 
departamento (sigla_depto, nome_depto, CPF_empregado) 
projeto (nro_projeto, nome_projeto) 
controla (sigla_depto, nro_projeto) 
desenvolve (CPF_empregado, nro_projeto, horas_trabalhadas) 
 
Integridade Referencial 
 
 
ões 
z Operações de m
– insert 
– delete 
– 
 
z strições de integridade especificadas no 
esquema
 
Operação Insert 
 
z serida em R 
z Pode violar as se
– Domínio 
– Chave (valor idêntico) 
– Integridade de entidade (null) 
rencial 
 
 
 
 
 
 
Restrições versus Operaç
 
odificação: 
→ inserção 
→ remoção 
 update (ou modify) → atualização 
Quando estas operações são aplicadas, as re
 do banco de dados relacional não devem ser violadas. 
 Fornece uma lista de valores de atributos para uma nova tupla t, que é in
guintes restrições: 
– Integridade refe
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
21
 
xemplos: 
 
z egridade de entidade 
z Inserir tupla em empregado com CPF já existente no BD viola restrição de chave 
upla em empregado com número de departamento inexistente em 
departamento viola integridade referencial 
 
Op
 
z Re
z Pode violar a integridade referencial quando as tuplas removidas forem referidas por chaves 
estr
z Soluções 
– rejeitar a remoção 
– remover em cascata 
– modificar valores dos atributos de referência 
z Remover tupla em empregado pode violar restrições de integridade referencial: 
e) que 
– Remover uma tupla em departamento porque um empregado foi removido? 
peração Update 
 
tes restrições: 
mínio 
 PK) 
de (se atributo é PK) 
z Soluções: 
 idem anteriores (para insert e delete) 
 
 
 
 
 
 
 
 
 
E
 Inserir tupla em empregado com CPF=null viola restrição de int
z Inserir t
eração Delete 
move uma ou mais tuplas 
angeiras de outras tuplas 
 
Exemplos: 
– Pode haver tuplas em outras relações (dependente, departamento, desenvolv
se referem a tupla em questão 
z Possíveis soluções: rejeitar a remoção, remover em cascata, alterar valores de atributos de 
referência que causam a violação: 
 
O
z Altera valores de alguns atributos em tuplas; 
– Pode violar as seguin
– Do
– Chave (se atributo é
– Integridade de entida
– Integridade referencial (se atributo é FK) 
–
 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
22
 
EXEMPL PRESA 
 
 
 
relac ZAÇÕES, 
 
representa
 
O : Considere o seguinte DER para o BD EM
 
Pode-se representar este DER pelo diagrama abaixo, que mostra um esquema do BD 
ional EMPRESA = {EMPREGADO, DEPARTAMENTO, DEPTO_LOCALI
PROJETO, TRABALHA_EM, DEPENDENTE} no qual os atributos sublinhados
m as chaves primárias: 
 
 
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
23
Restrições de integridade referencial exibidas no esquema de um BD relacional EMPRESA 
 
m estado de um BD possível para o esquema do BD relacional EMPRESA 
 
 
 
 
 
 
 
 
 
 
U
 
CURSO: SISTEMAS DE INFORMAÇÃO 
DISCIPLINA: MODELAGEM DE DAODS 
PROFESSORA: GELLARS TAVARES 
 
MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 
 
24
 
ÍNDICES 
 
• Recurso físico utilizado para otimizar a recuperação de uma informação, via um método de 
acesso. 
 
• Toda chave pode utilizar índices, mas um índice não é uma chave (não garante unicidade). 
 
• Índice = “Chave secundária” = “Chave de Procura” 
 – Serve para definir um segundo campo ordenado de acesso (otimização das consultas). 
 
• Qualquer campo pode ter um índice. 
 
• Só defina índices quando realmente necessário. 
 – Cada índice definido representa uma tabela a mais para o SGBD gerenciar. 
 • Aumento da base de dados. 
 • Inserção/Remoção exigem muito I/O para ordenação dos dados. 
 
 
Obs.: No ambiente relacional, uma tabela é acessível por qualquer campo (atributo) independente 
deste ser declarado como chave ou não. Para isso usamos o recurso do índice, que é um recurso 
isando otimizar a recuperação via um método de acesso. Alguns autores chamam o índice de 
have Secundária. 
OLTANDO AO ESQUEMA RELACIONAL 
 Esquema do BD X instância do BD 
– Esquema do BD = projeto lógico 
stância do BD = seus dados num determinado instante 
pecificação de um BD relacional (chamada de esquema do BD) deve conter no mínimo a 
e
físico v
C
 
V
 
•
 
 – In
 
 
z A es
d finição do seguinte: 
 
– Tabelas que formam o banco de dados; 
– Colunas que as tabelas possuem; 
– Restrições de integridade. 
 
Exemplo:

Outros materiais