Você está na página 1de 7

11/1/22

Lembre-se de
BASE DE DADO
que sonhos

sem riscos

produzem

conquistas

sem méritos.

01/11/2022 18:58 Prof. Bernardo Kilulo, MSc. 01/11/2022 18:58 Prof. Bernardo Kilulo, MSc.

MODELOS DE BASES DE DADOS Modelos de dados


üSISTEMA BASEADOS EM FICHEIROS qConceito: é um modelo lógico dos dados.
üMODELO HIERÁRQUICO Damas(2005, p. 40)
üMODELO EM REDES uNum modelo, não temos que nos preocupar com
questões física, formato dos dados, etc. A utilização
üMODELO RELACIONAL
de modelos é particularmente útil, pois:
üMODELO OREINTADO POR OBJECTOS
üPermitem o estudo ou gestão de apenas parte do
üMODELO OBJECTO-RELACIONAL problema;
üARQUITECTURA CLIENTE-SERVIDOR üPermite um nível maior de abstração;
üOs custos envolvidos são consideravelmente
menores do que os utilizados na implementação da
01/11/2022 18:58 Prof. Bernardo Kilulo, MSc. 01/11/2022 18:59 Prof. Bernardo Kilulo, MSc.
solução.

Modelo de Dados (Cont.) Divisão dos Modelos


üUm modelo é apenas uma forma de representação uModelos lógicos baseados em objectos
da realidade;
• Modelo E-R (Entidade-Relacionamento)
üOs utilizadores de um modelo têm de ter algum • Modelo OO (Object Oriented)
nível de formação técnica em comum;
•…
üUm modelo tende a dar ênfase a alguns aspectos
do problema; uModelos lógicos baseados em registos
üA descrição do modelo tem de ser feita nalguma • Modelo Hierárquico (ex: XML)
linguagem, podendo por isso levantar questões de • Modelo em rede ()
interpretação; • Modelo Relacional (Tabelas, Colunas)
üA interpretação de um modelo pode não ser feita uModelos Físicos
da mesma forma por todos os utilizadores.
01/11/2022 18:59 Prof. Bernardo Kilulo, MSc. 01/11/2022 18:59 Prof. Bernardo Kilulo, MSc.

1
11/1/22

MODELO RELACIONAL Tabelas e Relações


• Surgiu em 1970, basea-se assim • Def.: é uma estrutura bidimensional que
num modelo rigoroso matemático. obedece a um esquema determinado e
zero ou mais instâncias. Damas(2005,
• Surgiu como tentantiva de libertar
p.50).
os utilizadores de especificações
rígida associadas ao formato dos • O esquema de uma relação é constituído
por um ou mais atributos que traduzem o
dados como acontecia com o
tipo de dados a armazenar. A cada
modelo hierárquico e como
instância de uma relação chama-se tuplo.
modelo em Rede.
01/11/2022 19:00 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:00 Prof. Bernardo Kilulo, MSc.

Tabelas e Relações Tipos de Relações/Tabelas


üA estrutura fundamental do modelo qRelações Base: que constituem o
relacional é a relação. esquema da BD;
üO esquema da relação é constituído por um qRelações Virtuais (Views): Que não
ou mais atributo. têm existência própria, pois derivam e
üO número do atributo é fixo (grau da estão associados às relação Base com o
relação) objectivo de proporcionar a criação de
üOs atributos não são ambíguos janelas parciais sobre o esquema de
üDo cruzamento de uma coluna com uma BD.
linha apenas resulta um único valor.
01/11/2022 19:00 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:01 Prof. Bernardo Kilulo, MSc.

Atributos/Colunas Tuplos/Linhas
ü Cada atributo terá associado um tipo de dados de üCada instância do esquema da relação
acordo com o tipo de informação que irá designa-se por tuplo.
armazenar.
ü O domínio de um atributo corresponde à gama de
üOs tuplos de uma relação devem ser
valores admissíveis para esse atributo (Ex.: idade: distintos.
valores inteiros >=0; Sexo={‘M’,’F’})
üA ordem dos tuplos, tal como a ordem dos
ü O valor de cada atributo numa relação devem ter
identificadores distintos. atributos (no seu esquema) não tem qualquer
ü O valor especial NULL é utilizado para identificar significado.
a “inexistência de valor”. üUma relação pode ter 0 ou mais tuplos
01/11/2022 19:01 Prof. Bernardo Kilulo, MSc. (cardinalidade da relaçaõ).
01/11/2022 19:01 Prof. Bernardo Kilulo, MSc.

2
11/1/22

Tuplos/Linha
üO conjunto de tuplo de relação
contém o mesmo número de campos,
pela mesma ordem e com a mesma
estrutura.
üNão é possível referenciar um tuplo
de uma relação pela posição (número
da linha) que ocupa a relaçaõ.
01/11/2022 19:01 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:01 Prof. Bernardo Kilulo, MSc.

Equivalência entre conceitos Conceitos Fundamentais


Modelo Base de Outras qO grau de uma relação:
Relacional Dados Designações Corresponde ao número de atributos
Relação Tabela que constituem o esquema de uma
Atributo Campo Coluna, relação.
propriedade
qA cardinalidade de uma relação:
Tuplo Linha Registo,
Corresponde ao número de tuplo
ocorrência,
instância (linhas) de uma relação (tabela).
01/11/2022 19:01 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:01 Prof. Bernardo Kilulo, MSc.

Exemplos Chaves
Atributos qNo modelo relacional a única
Tuplo
Linha
forma de relacionar dados que
ID Nome Salário
234 Luís 16 450
Cardina
lidade existem numa tabela, com
da
453 Otávio 12 650
Relação dados que existem noutra
1223 Pedro 13 154
Grau da Relação
tabela, é através de atributos
comuns.
01/11/2022 19:01 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:01 Prof. Bernardo Kilulo, MSc.

3
11/1/22

Tipos de Chaves Tipos de Chaves


üSuperchave – Associação de um ou mais üChave Primária – Chave
atributos (campos) que, em conjunto selecionada entre as diferentes
identificam cada um dos tuplos (linhas da chaves candidatas para, efetivamente,
tabela). identificar cada tuplo (linha).
üChave Candidata – Subconjunto dos
atributos de uma superchave que, sendo
üChave estrangeira – Atributo ou
ainda superchave, não pode ser reduzido conjunto de atributos de uma relação,
sem perder essa qualidade; que é chave primária noutra relação.
01/11/2022 19:01 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:01 Prof. Bernardo Kilulo, MSc.

Restrições de Integridade Restrições de Integridade


qA integridade dos dados é um termo üIntegridade de entidade:
abragente que inclui, Cada linha de uma tabela deve poder ser
simultaneamente, os conceitos de identificada univocamente. Isto quer dizer
consistência, precisão e correção dos que cada tabela deverá possuir na sua
dados armazenados numa base de definição uma chave primária.
dados e que são consistente entre si. Funcinam a nível da linha e da tabela da
BD.
qExistem três tipos de integridade:
01/11/2022 19:02 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:02 Prof. Bernardo Kilulo, MSc.

Restrições de Integridade
Restrições de Integridade
qIntegridade do domínio:
q Integridade Referencial
üValor de um campo deve obedecer ao ü O valor dos campos que constituem a chave
tipo de dados e às restrições de estrangeira de uma tabela deve estar também presente
na chave primária da tabela que referenciam ou,
valores admitados para essa coluna. quanto muito, podem ter o valor NULL.
üEssa é a forma mais elementar de ü Tem por objectivo manter os dados sincronizados,
entre tabelas e a chave estrangeira da outra tabela (Ex:
restrição de integridade
não posso ter linhas de factura sem ter a fatura associada)
üFunciona ao nível da coluna de uma ü Funciona ao nível da tabela.
tabela da BD.
01/11/2022 19:02 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:02 Prof. Bernardo Kilulo, MSc.

4
11/1/22

Álgebra Relacional Cálculo Relacional


qSendo uma relação um conjunto, então qO utilizador pode definir o que pretende
todas operações que se podem realizar através de uma forma declarativa, sendo
sobre conjuntos podem ser aplicados á o cálculo baseado em predicados de 1ª
relação. ordem. Para além dos operadores lógicos
üSeleção
ü União e condicionais, podem ser utilizado os
ü Diferença seguinte quantificadores:
üProjecção
ü Intersecção üQuantificador existencial;
üProduto carteziano
ü Junção üQuantificador universal.
üDivisão
01/11/2022 19:02 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:02 Prof. Bernardo Kilulo, MSc.

12 Regras de Codd 12 Regras de Codd


ØRegra 2: Garantia de Acesso
ØRegra 0: Capacidade relacional total
qCada dado armazenado na BD deve
qUm sistema gestor de BDR tem de ser capaz
de gerir as BD recorrendo unicamente às suas
poder ser acedido logicamente pela
capacidades relacionais. combinação de:
ØRegra 1: Representação da Informação em üNome da tabela onde está armazenando;
Tabelas üValor da chave primária;
Numa BDR, todos os dados, incluindo o próprio üColuna (Atributo)
dicionário de dados, são armazenados de uma só
q A ordem das linhas e das colunas dentro da tabela
forma em tabelas dibimensionais; deve ser irrelevante;Prof. Bernardo Kilulo, MSc.
01/11/2022 19:02 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:02

12 Regras de Codd 12 Regras Codd


Ø Regra 3: Suporte sistemático de valores NULL ØRegra 4: Católogo activo e disponível:
qOs valores nulos (NULL) são suportados para
qOs metadados são definido,
representar informação não disponível ou não
aplicável, independemente do domínio dos representados e acedidos da mesma
respectivos atributos; forma que os próprio dados.
qO Valor NULL é diferente de zero e diferente da qOs metadados (descrição da BD), tal
string vazia. Pode ser atribuído a qualquer coluna, como os dados, são armazenados em
independentemente do tipo de dados que esta
tabela na BD. Assim, também os metadados
suporta.
podem ser acedidos usando a mesma
01/11/2022 19:02 Prof. Bernardo Kilulo, MSc. linguagem utilizada
01/11/2022 19:02 para
Prof. Bernardo Kilulo,acesso
MSc. aos dados.

5
11/1/22

12 Regras de Codd 12 Regras de Codd


Ø Regra 5: Linguagem de acesso aos dados: ØRegra 6: Actualização de views:
qDeve existir pelo menos uma linguagem ou
sublinguagem suportada pelo SGBDR, com uma qAs actualizações de dados feitas numa view
sintaxe bem definida, compreensível, na qual são (actualizável), devem ser reprercutidos nas
suportadas as operação sobre dados. tabelas originais da BD a que pertencem;
ü Definição de dados; Definição de views
ØRegra 7: Operações de alto nível:
ü Manipulação de dados, com possibilidade de
utilização interactiva ou em programa de qUm SGBDR deve ser capaz de tratar uma
aplicação; Definição de regras de integridade; tabela (base ou view) como se fossem um
Definição de autorização de acesso. Controlo de
transações (COMMIT, ROLLBACK) simples operando, tanto em operações de
consulta como de inserção e actulização
01/11/2022 19:02 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:03 Prof. Bernardo Kilulo, MSc.

12 Regras de Codd 12 Regras de Codd


ØRegra 8: Independência física dos dados: Ø Regra 10: Independência da integridade:
qAlterações na organização física dos ficheiros qAs regras e restrições de integridade devem poder
ser especificadas numa linguagem relacional,
da BD ou nos métodos de acesso a esses independemente dos programas de aplicação e
ficheiros (nível interno) não devem afectar armazenadas no dicionário de dados
conceptual Ø Regra 11: Independência (transparência) de
ØRegra 9: Independência lógica dos dados: localização
qAlterações no esquema da BD (nível qO Facto de uma BD estar centralizada numa
conceptual), que não envolvam remoção de máquina, ou distribuída por várias máquinas, não
deve repercurtir-se ao nível da manipulação dos
elementos, não devem afectar o nível externo. dados.
01/11/2022 19:03 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:03 Prof. Bernardo Kilulo, MSc.

12 Regras de Codd
Ø Regra 12: Não subversão:
qSe existir no sistema uma linguagem de mais
baixo-nível (tipo record oriented) ou recursos de
uma linguagem que permitam o processamento de
ficheiro em baixo nível, o SGBDR não deverá
permitir ultrapassar as restrições de integridade e
segurança.
qO SGBDR deve impedir que os dados sejam
manipulados por acessos feito por parte do
exterior em linguagemde mais alto nível
01/11/2022 19:03 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:03 Prof. Bernardo Kilulo, MSc.

6
11/1/22

Unidade 3 – Normalização Unidade 4 – Desenho de BDR


qIntrodução üSI
ØDependência Funcionais
ØDependência Triviais e Não-Triviais üCiclo de vida de um SI
ØFormas Normais üPlaneamento, Análise
ü1ª Forma Normal
ü2ª Forma Normal qCiclo de Vida de BD
ü3ª Forma Normal
qDiagrama Entidade-Associação
üForma Normal de Boyce -Codd
01/11/2022 18:57 Prof. Bernardo Kilulo, MSc. 01/11/2022 19:03 Prof. Bernardo Kilulo, MSc.

FIM…
Muito Obrigado!
Ver o Cap. 3.
Normalização
MSc. Engº Bernardo Kilulo; 923 844
01/11/2022 19:03 573/918 341 134. E-mail: 01/11/2022 19:03 Prof. Bernardo Kilulo, MSc.
benikilulo@gmail.com

Você também pode gostar