Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.....
-
Upload
gabriela-taveira-zagalo -
Category
Documents
-
view
216 -
download
0
Transcript of Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.....
![Page 1: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/1.jpg)
Banco de Dados I
Modelo Relacional
![Page 2: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/2.jpg)
2
ConteúdoParada técnica
...onde estamos...de onde viemos..
e para onde vamos.. Modelo Relacional
Características do Modelo RelacionalRegras de Integridade Regras de Mapeamento
Exercício
![Page 3: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/3.jpg)
3
Parada técnica Ciclo de vida do Proj. de Banco de
Dados ou Engenharia de Software
Projeto Conceitual
(Análise) Projeto Lógico (Projeto)
Projeto Físico (Implementação)
![Page 4: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/4.jpg)
4
Parada técnica Ciclo de vida do Proj. de Banco de
Dados ou Engenharia de SoftwareProjeto Conceitual
(Análise)
(de onde viemos) Projeto Lógico
(Projeto)
(estamos aqui) Projeto Físico (Implementação)
(para onde vamos)
![Page 5: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/5.jpg)
5
Parada técnicaMundo Real
Diag. Entidade Relacionamento(de onde viemos)
Modelode
Dados
Diagrama Relacional(estamos aqui)
Modelo Lógico
SQL(para onde vamos)
Projeto Conceitual
Projeto Lógico
Projeto Físico
![Page 6: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/6.jpg)
6
Projeto Lógico
Diag. R(Modelo Relacional)
Modelode
Dados
Projeto Lógico
O esquema Conceitual de alto nível- DER - é mapeado para modelo de implementação de dados do SGBD que será usado, no caso, modelo Relacional.
Conceitos:SGBDRelacional •notação gráfica
Diag. E-R( Modelo ER)
Modelo Lógico
![Page 7: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/7.jpg)
7
Projeto LógicoBaseado no Modelo* Relacional .
Conjunto de 12 Regras, estabelecida por Edgard F Codd, 1977.
Estas regras é que definem se um sistema pode ser chamada de Relacional ou não
Toda coluna deve somente conter valores atômico (regra)
Baseado na teoria de Conjunto: Álgebra Relacional
Os modelos comerciais: Rede, Hieráquico, Relacional, Relacional Extendido, OO
* O modelo é o que define as características e funcionalidades que o SGBD oferece
![Page 8: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/8.jpg)
8
Modelo Relacional: regrasRegras de Integridade
Integridade identidade: chave primária: – única e– não nula ... identifica um único elemento num
conjunto
Integridade referencial: chave estrangeira: – pode ser nula– ou existir uma chave primária
![Page 9: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/9.jpg)
9
Regras de Mapeamento
Transformação do DER em DR
Clientes
codigo nome fone*
Pedidos
número data
possui N1
Tabelas Tabelas
![Page 10: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/10.jpg)
10
Entidade: ?
Clientes
codigo nome fone
![Page 11: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/11.jpg)
11
1. Entidade:
Toda entidade vira tabela seus atributos serão colunas, cuidado com os atributos
composto* e multivalorado** atributo determinante = chave primária segue a mesma notação
Clientes
codigo nome foneClientes
codigo nome fone
521001 José 123333
521002 Ana 85256
Clientes
codigo nome fone
DER DR
![Page 12: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/12.jpg)
12
2. Relacionamento
Clientes
codigo nome fone
Pedidos
número data
possui N1
O que determina a estrutura de uma tabela:• cardinalidade• restrições de totalidade no relacionamento
![Page 13: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/13.jpg)
13
Cardinalidade: 1:1
Motorista
codigo nome fone*
CNHabilitação
número data_expedição
possui 11
m1 cnh1
m2 cnh2
m3 cnh3
m4 cnh4
![Page 14: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/14.jpg)
14
Cardinalidade: 1:1
Motorista
codigo nome fone
CNHabilitação
número data_expedição
possui 11
Motorista
codigo nome fone
CNHabilitação
número data_expedição
DER
DRcódigo
(motorista)
CNHHabilitaçãonumero data_expedicao
521001 12/05/2000
521002 15/07/1974
Motoristacodigo nome fone
521001 José 123333
521002 Ana 85256
cnh (CE)
521001
521002
Motorista (CE)
![Page 15: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/15.jpg)
15
Cardinalidade: 1:1
Motorista
codigo nome fone*
CNHabilitação
número data_expedição
possui 11
Estratégias:1. Chave estrangeira: Qualquer dos lados pode absorver a chave estrangeira, preferência do lado da totalidade, garante nunca vazia. ( em CNH)2. Agrupar Tabelas: quando os dois relacioanmentos são totais.3. Criar uma relação para o relacionamento, com cada uma das chaves
•Evitar colocar a chave em ambos os lados, dificuldade no gerenciamento
![Page 16: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/16.jpg)
16
Cardinalidade: 1:N
Departamento
codigo nome ramall
possui N1
d1 f1
d2 f2
d3 f31
f4
Funcionário
codigo nome salario
![Page 17: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/17.jpg)
17
Cardinalidade: 1:N
Departamento
codigo nome ramall
possui N1 Funcionário
codigo nome salario
Duas alternativas:1: Departamento ter várias colunas para indicar os funcionários. ???
2: Funcionário ter uma coluna adicionar para indicar o departamento???
![Page 18: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/18.jpg)
18
Cardinalidade: 1:N
Departamento
codigo nome ramall
possui N1 Funcionário
codigo nome salario
Departamento
codigo nome ramall
Funcionário
codigo nome salario
codigo
(departamento)
DER
DR
departamento(CE)
![Page 19: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/19.jpg)
19
Cardinalidade: 1:N
Departamento
codigo nome ramall
possui N1 Funcionário
codigo nome salario
Alternativas:2: Funcionário ter uma coluna adicionar para indicar o departamento:
o lado n absorve o lado 1
![Page 20: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/20.jpg)
20
Cardinalidade: 1:N
Particularidade:1. Quando não há totalidade, pode-se criar uma tabela para representar o relacionamento:• vantagem:
não terá coluna nula para representar informação ganho de desempenho em determinadas consultas
• desvantagem: uma tabela a mais perda de desempenho na consultas (join)
2. Atributos do relacionamento?
Sócio
codigo nome ramall
aluga N1 Fita
codigo dt_aquisiçãodt_retradadt_prov_dev
![Page 21: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/21.jpg)
21
Cardinalidade: N:N
Peças
codigo descrição preço
Fornecedores
codigo nome
possui NN
p1 f1
p2 f2
p3 f31
f4
CGC*
![Page 22: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/22.jpg)
22
Cardinalidade: N:N
Peças
codigo descrição preço
Fornecedores
codigo nome
possui NN
CGC*
Peças
codigo descrição preço
Fornecedores
codigo nome CGC*
Possui codigo(fornecedor)
codigo(peca)
DER
DR
peca(CE) fornecedor(CE)
![Page 23: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/23.jpg)
23
Cardinalidade: N:N
Peças
codigo descrição preço
Fornecedores
codigo nome CGC*
Possui codigo(fornecedor)
codigo(peca)
DR
Pecas Posssui Fornecedores pc forn01 porca 1,0 01 01 01 Rei da Porca02 parafuso 0,5 02 01 02 Rei do Parafuso03 prego 0,1 01 02 02 02 03 01
peca(CE) fornecedor(CE)
![Page 24: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/24.jpg)
24
Cardinalidade: N:N
Peças
codigo descrição preço
Fornecedores
codigo nome
possui NN
CGC*
Sempre gera tabela, novo símbolo para indicar que a tabela é originada de um relacionamento.
Os atributos do relacionamento se mantém na tabela do relacionamento.
As chaves primárias é no mínimo a combinação da chaves estrangeiras, e dependendo do negócio, é mais algum outra atributo.
![Page 25: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/25.jpg)
25
Restrição de Totalidade
Indica se uma determinada chave estrangeira poderá ser nula ou nãoTotalidade indica que a chave estrangeira não poderá ser NULAOu seja, o codigo de departamento em funcionário deverá ser definido como nunca receber um valor NULO
Departamento
codigo nome ramall
possui N1 Funcionário
codigo nome salario
![Page 26: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/26.jpg)
26
Unário ou Auto-relacionamento
DER 1Funcionário
codigo nome salario
chefia
N
subordinado
superior
![Page 27: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/27.jpg)
27
Unário ou Auto-relacionamento
• O determina é a cardinalidade, portanto neste caso a tabela Fucnionário ganha uma nova coluna com o nome do papel (superior).• Daí a importância dos nomes dos papéis nos auto-relacionamentos.
1Funcionário
codigo nome salario
chefia
N
subordinado
superior
1Funcionário
(superior)codigo
codigo nome salario superior (CE)
DER DR
![Page 28: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/28.jpg)
28
Relacionamento: ternário ou n-ário
Funcionário
codigo nome salario
LinguagemPro
codigo nome
Projeto
codigo nome
participa NN
Ndescrição
DER
![Page 29: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/29.jpg)
29
Relacionamento: ternário ou n-ário
LinguagemPro
codigo nome
Projeto
codigo nome
codigocodigo
descrição
participa(linguagem)
Funcionário
codigo nome salario
codigo
(projeto)
(funcionário)
linguagem(CE)
funcionário(CE)
projeto(CE)
• Relacionamentos ternários ou de grau maior (n-ários), sempre geram tabela. • A chave primária desta nova tabela é a combinação de todas as chaves estrangeiras.• Os atributos que existirem nete relacionamento mantém nesta tabela
DR
![Page 30: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/30.jpg)
30
Atendimento
Agregação
nome
Medico
codigo nome especialidade
Pacienteatende NN
gera
Exame
codigo preço
N
N
codigo nome nacimento
![Page 31: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/31.jpg)
31
Agregação
Medico
codigo nome especialidade
Paciente
codigo nome nacimento
nome
Exame
codigo preço
atendecodigo
(medico)
geramedico (CE)
exame (CE)
paciente (CE)
codigo(paciente)
medico (CE) paciente (CE)
codigo (exame)
medico,paciente
(medico, paciente)
![Page 32: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/32.jpg)
32
GeneralizaçãoGeneralização
Contanumerosaldo
Conta_Poupança
juros dt_niv
Conta_Corrente
limite tarifa
![Page 33: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/33.jpg)
33
GeneralizaçãoGeneralizaçãoConta
numerosaldo
Conta_Poupança
juros dt_niv
Conta_Corrente
limite tarifa
numeronumero (numero)(numero)
numero (CE) numero (CE)
• As Entidades filhas recebem a chave primária da entidade pai
![Page 34: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/34.jpg)
34
GeneralizaçãoGeneralizaçãocuidadoscuidados
Deleção/remoção remover um elemento da classePai implica
em remover um elemento da classeFilha (total), vários (sobreposto) ou nenhum (parcial)
inserção na classePai implica em incluir em 1(total e não sobreposto) na classeFilha ou mais de um (sobreposição)
![Page 35: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/35.jpg)
35
Atributo Multivalorado
Clientes
codigo nome fone*
Clientescodigo nome fone
521001 José 123333 54321 432211
521002 Ana 85256 , 4342423
Atributos atômico
![Page 36: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/36.jpg)
36
Atributo Multivalorado
Clientes
codigo nome fone*
PossuiClientes
codigo nome fone
codigo(cliente)
Possuicliente fone
521001 325144
521002 01997877
![Page 37: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/37.jpg)
37
Entidade Fraca
Funcionário
codigo nome endereço
possui N1 Dependente
nome data_nas
Funcionário
codigo nome endereço
Dependente
funcionário (CE) nome data_nas
codigo
(funcionário)
DR
DER
Chave estrangeira na tabela Dependente: funcionárioChave Primaria na tabela Dependente: funcionário e nome
![Page 38: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/38.jpg)
38
Descrição da Tabela Nome_da_Tabela
nome_col1 nome_col2 nome_colN
tipo Chave (CP/CE)Nulo (NN)tipo da coluna*tamanhoexemplo
* Tipos: numérico, caracter, data
![Page 39: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/39.jpg)
39
Exercício
1. Locadora de Vídeo (Mapeamento)
2. João de Barro (Mapeamento)3. Exercício 4 da prova
(Mapeamento)
![Page 40: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/40.jpg)
40
FIM!!!!
![Page 41: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/41.jpg)
41
Próxima aula
![Page 42: Banco de Dados I Modelo Relacional. 2 Conteúdo Parada técnica...onde estamos... de onde viemos.. e para onde vamos.. Modelo Relacional Características.](https://reader035.fdocuments.mx/reader035/viewer/2022062818/5706384a1a28abb8238f5389/html5/thumbnails/42.jpg)
42
Bibliografia 1. ELMASRI, R e NAVATHE S. Fundamentos de Sistemas de Banco
de Dados. 3 ed. Rio de Janeiro: LTC 2002. Capítulo 7 2. MACHADO, Felipe Nery Rodrigues, ABREU, Maurício Pereira de.
Projetos de Banco de Dados: uma visão prática. 4ed. São Paulo: Érica, 1998. 298p. Capítulo 13
3. KORTH, Henry F. , Silberschatz , Abraham, Sistemas de Banco de Dados. 3ed. São Paulo: Makron Books 1999. 806p. Capítulo 2 – tópico 2.9