Upload
gates
View
39
Download
1
Embed Size (px)
DESCRIPTION
2. Bases de dados relacionais (3ª aula) ○ Conceitos básicos de bases de dados relacionais ○ A 3ª forma normal. Graça Abrantes. Desenvolvimento de uma base de dados. Realidade Modelo conceptual (e.g. Modelo Entidade-Associação) Modelo lógico (e.g. Modelo Relacional). - PowerPoint PPT Presentation
Citation preview
Bases de dados relacionais (3ª aula) ○ Conceitos básicos de bases de dados relacionais
○ A 3ª forma normal
Graça Abrantes
2
Desenvolvimento de uma base de dados
Realidade
Modelo conceptual
(e.g. Modelo Entidade-Associação)
Modelo lógico
(e.g. Modelo Relacional)
3
Modelo lógico: SGBD relacional
Baseiam-se num conjunto de conceitos teóricos apresentados em 1970 por E. F. Codd.
Vantagens dos SGBD relacionais:– simplicidade dos conceitos que utilizam
– existência de definições formais para os conceitos • permitiram uma rápida divulgação
• permitiram a adesão de diversos fabricantes de software;
– adequação à representação de muitos dos aspectos que constituem a realidade
4
Relação
Nas bases de dados relacionais a estrutura fundamental é a relação, também designada por tabela.
Uma relação ou tabela é definida por um esquema.
Um esquema é composto:– pelo nome da relação
– pelos nomes dos atributos
5
Esquema
Exemplos:
PqCampismo(designação, capacidade, prop)
Concelho(código,designação)
6
Atributos
Um atributo Ai toma valores num conjunto Di
chamado domínio do atributo. – O domínio determina o tipo de valores que o atributo
pode tomar.
Dado U={A1, A2,...,An}, uma relação R sobre U é
um subconjunto de D1 x D2 x ... x Dn.
A cada tuplo deste produto cartesiano dá-se o nome de instância da relação R.
7
Tabela
O conjunto das instâncias da relação R constituí uma tabela em que
- as linhas são as instâncias (ou registos)
- as colunas são os atributos (ou campos)
Exemplo de tabela
8
FID AREA PERIMETER CODSOLO NOME SUBNOME ESPECIFI
0 97874696,000 47854,961 704 CAMBISSOLOS Cambissolos húmicos rochas eruptivas
1 168769040,000 89036,758 401 RANKERS Rankers
2 35709536,000 29313,652 707 CAMBISSOLOS Cambissolos húmicos xistos (associados a Luvissolos, forte influência atlântica)
3 2353602560,000 568370,063 704 CAMBISSOLOS Cambissolos húmicos rochas eruptivas
4 31251520,000 98195,047 0
5 23266346,000 40939,973 711 CAMBISSOLOS Cambissolos húmicos rochas sedimentares post-Paleoz¾icas
6 52112604,000 50222,359 707 CAMBISSOLOS Cambissolos húmicos xistos (associados a Luvissolos, forte influência atlântica)
7 63716896,000 56198,262 704 CAMBISSOLOS Cambissolos húmicos rochas eruptivas
8 45220672,000 35044,168 401 RANKERS Rankers
9 377770816,000 224721,875 706 CAMBISSOLOS Cambissolos húmicos xistos
10 208459376,000 132747,672 706 CAMBISSOLOS Cambissolos húmicos xistos
11 781195,938 4151,222 601 SOLONCHAKS Solonchaks gleizados
12 546063616,000 250144,625 708 CAMBISSOLOS Cambissolos húmicos xistos (associados a Luvissolos, forte influência atlântica)
13 37558660,000 27818,992 401 RANKERS Rankers
14 577211776,000 312965,563 707 CAMBISSOLOS Cambissolos húmicos xistos (associados a Luvissolos, forte influência atlântica)
15 31008276,000 34558,926 704 CAMBISSOLOS Cambissolos húmicos rochas eruptivas
16 148451328,000 82194,953 704 CAMBISSOLOS Cambissolos húmicos rochas eruptivas
17 21833836,000 31642,904 707 CAMBISSOLOS Cambissolos húmicos xistos (associados a Luvissolos, forte influência atlântica)
9
Observações
os valores de cada atributo pertencem a um mesmo domínio;
o valor de um atributo é sempre atómico;– isto é, numa tabela, no cruzamento de uma linha com uma coluna
só pode existir um valor de atributo; numa relação não podem existir instâncias iguais; a ordem porque se encontram as instâncias de uma relação
e os seus atributos é irrelevante; podem existir instâncias sem valores em alguns dos seus
atributos; neste caso o atributo diz-se opcional e o seu valor é null;
os nomes (ou identificadores) dos atributos que constituem o esquema de uma relação são únicos nessa relação.
10
Chave(s) de uma relação
Um conjunto de atributos que tomam valores diferentes para cada instância da relação é uma chave da relação. – cada instância pode ser identificada pelo valor da
chave: o valor da chave nunca se repete.
Uma chave pode ser composta por um ou mais atributos.
Atributo primário: pertence à chave Atributo não primário: não pertence à chave
11
Chave primária e chave estrangeira
Nos SGBD relacionais, para representar as associações existentes entre as várias entidades utilizam-se esquemas de relações em que figuram atributos comuns.
Chave primária de uma relação é um subcon-junto mínimo de atributos cujos valores permitem identificar de modo único cada uma das instâncias dessa relação.
Uma chave estrangeira de uma relação é um conjunto de atributos que é chave primária de outra relação.
As formas normais
Para um dada realidade pode existir mais do que um esquema de base de dados adequado– é difícil escolher qual o melhor
– nem existem regras para criar um esquema óptimo
Para um esquema de base de dados não estar correcto ...– é suficiente que ele não cumpra a 3ª forma normal
– cumprir a 3ª forma normal não é suficiente para que um esquema se possa considerar óptimo
12
13
Modelo relacional: 1ª forma normal
• Todos os atributos tomam valor único.
Exemplo: Em vez de
Fazer:
Tejo principal marítima, terrestre
Mondego principal marítima
Tejo principal sim sim
Mondego principal sim não
14
Modelo relacional - Dependências funcionais
• Dada um relação R definida sobre um conjunto de atributos U={A1, A2, …, An}, diz-se que o atributo Ak depende funcionalmente do atributo Ai (AiAk) se e só se sempre que duas instâncias têm o mesmo valor em Ai tiverem, necessariamente, também o mesmo valor em Ak.
15
Modelo relacional: 2ª forma normal
• A relação tem que estar na 1ª forma normal• Não existem dependências funcionais entre
atributos que não pertencem à chave primária e partes da chave primária
• a 2ª forma normal só é relevante quando a chave primária de uma tabela é composta por mais do que um atributo
16
Modelo relacional: 3ª forma normal
• A tabela tem que estar na 2ª forma normal• Não existem dependências funcionais entre
atributos que não pertencem à chave primária
17
Normalização
• A passagem de uma forma normal para outra pode implicar a decomposição de uma tabela num conjunto de tabelas.
18
Exemplo: 2ª FN 3ª FN
Exemplo: atendendo a que a 1ª coluna da tabela é a chave primária, a tabela seguinte verifica a 2ª forma normal mas não a 3ª forma normal
Substituindo esta tabela pelas 2 tabelas seguintes, não há perda de informação e ambas verificam a 3ª forma normal
RC13206 1111 SINTRA 11 Lisboa
RC13205 1110 OEIRAS 11 Lisboa
RC13206 1111 SINTRA 11
RC13205 1110 OEIRAS 1111 Lisboa
19
Tabela normalizada (3ª forma normal)
• Numa tabela que verifica as primeiras três formas normais, qualquer atributo que não pertence à chave primária depende completamente e exclusivamente da totalidade dessa chave.
20
Por que é que a tabela abaixo não está na 3ª forma normal?
21
Exemplo:
Suponha que tem que estruturar um tema relativo a árvores notáveis numa estrutura de dados vectoriais de um sistema de informação geográfica (SIG). Para cada árvore pretende registar o nome comum, o nome científico, a família, a altura da árvore e o diâmetro do tronco (DAP). Existe um milhar de árvores notáveis na região de interesse, havendo várias espécies representadas por diversos indivíduos. Como estruturaria essa informação no SIG?
22
Consistência, redundância e formas normais
Para evitar redundâncias e para facilitar a manutenção da consistência dos dados na base de dados, as tabelas devem verificar as formas normais.
A primeira forma normal é obrigatoriamente respeitada por uma relação.
A segunda forma normal é obrigatoriamente respeitada por uma relação cuja chave primária seja simples.
A segunda forma normal nas relações que possuem chave primária composta e a terceira forma normal asseguram a não existência de um certo tipo de redundâncias na base de dados.