Você está na página 1de 20

20/10/2013

Desenvolvimento de Bases de Dados


Escola Secundária de Leal da Câmara
1. Necessidade das bases de dados.
3 P3 2. Sistemas de gestão de bases de dados.
3. Os modelos como métodos de conceção de
sistemas.
4. Modelos utilizados na gestão de bases de dados:
Desenvolvimento de Bases de Dados a) Relacional
b) Hierárquico
Módulo 5 – Sistemas de Informação c) Rede

1. Necessidade das bases de dados Necessidade das bases de dados


Permite guardar dados dos mais
Necessidade e guardar vários tipos de dados. variados tipos;
Inicialmente os dados eram guardados em papel. Permite um rápido e fácil acesso aos
Para efetuar uma pesquisa tinha que se saber com dados por vários utilizadores,
exatidão a gaveta onde a informação constava. simultaneamente;
Acelera os processos de
manuseamento da informação, como,
por exemplo, consultas ou alterações
de dados;
Economiza toneladas de papel.

1
20/10/2013

Exemplos comuns Dados e Informação


Agenda telefónica; Dados
Fichas de utentes dos centros de saúde; Em informática designa-se por dados os elementos
Produtos existentes num armazém; de partida que servem de base para o tratamento e
Clientes e fornecedores de um armazém; sobre os quais o computador efetua as operações
necessárias à tarefa em questão.
Utentes de uma biblioteca; etc.…

Os dados são uma representação dos factos,


conceitos ou instruções de uma maneira normalizada
que se adapte à comunicação, interpretação e
processamento pelo ser humano ou através de
máquinas automáticas.

Dados e Informação Dados e Informação


Exemplo
Informação
Podemos entender Informação como um conjunto de A frase:“O João comprou 2 canetas” é informação.
dados, organizados e sujeitos a um tratamento, Os dados que permitiram criar essa informação são:
tornando assim possível a sua utilização num “João”,“comprou”,“2” e “canetas”.
determinado contexto. Os dados não têm qualquer
valor e só se transformam em informação quando
relacionados.

2
20/10/2013

Dados e Informação Definição de Base de Dados


Uma base de dados é uma qualquer coleção organizada de dados,
Uma informação atual e correta só é possível se os respeitante a um determinado assunto, que tem como objetivo
seus dados estiverem atualizados e forem precisos. armazenar informação num computador e é criada com o propósito
De outra forma, a nossa informação não será útil. de facilitar o acesso a esses dados pelos utilizadores. Neste caso, a
Mas, para que isto possa acontecer, existem algumas informação pode ser entendida como um conjunto de dados em
condições que os dados devem garantir: forma de texto, números ou gráficos.
Atualidade;
Correção; (BD – Conjunto de dados relacionados entre si e organizados de forma a
facilitar a sua utilização por parte do utilizador.)
Relevância;
Disponibilidade; Uma base de dados é planeada, construída e atualizada
Legibilidade. com dados que representam aspetos do mundo real.

Objetivos de uma Base de Dados Sistemas de Gestão de Base de Dados(SGBD)


Software que disponibiliza todos os serviços básicos,
Diminuir o espaço ocupado pela informação; como a criação, o acesso e a manutenção da
Facilitar a atualização da informação; informação numa base de dados.
Aumentar a velocidade de pesquisa; As base de dados são um conjunto de dados
estruturados e manipulados através de um SGBD.
Evitar a redundância da informação
(informação repetida dentro de uma mesma base de Capacidade de processar grandes quantidades de
informação, tais como:
dados). Sistemas de armazenamento de operações bancárias;
A criação de uma base de dados implica um conhecimento profundo do que se Base de dados empresariais com vários tipos de informação
(ex.: vendas, funcionários, clientes, fornecedores, faturação);
pretende: qual a informação a guardar, de que forma esta informação se encontra
Sistemas de reservas de companhias de aviação;
relacionada e para que finalidade, que informação é que se pretende extrair da base
Sistemas de companhias de seguros.
de dados, etc..

3
20/10/2013

Exemplos SGBD Características de um SGBD


Dividem-se em dois grandes grupos:
Grande porte Independência dos dados;
Exemplos: ORACLE, Microsoft SQL Server, Ingres, Informix Redundância controlada;
e DB2;
Integridade dos dados;
Uso pessoal (doméstico) e ou de pequenas empresas. Abstração dos dados (o sistema esconde os detalhes
Exemplos: MySQL, Dbase, FoxPro e o Microsoft Access. sobre a forma como como os dados estão
fisicamente armazenados e mantidos);
Acesso simultâneo aos dados;
Facilidade de obtenção de informação atualizada;
Diferentes vistas da base de dados.

Vantagens de um SGBD Desvantagens de um SGBD

Eliminação da inconsistência e de anomalias de dados Sistema de grande complexidade, ocupa muito espaço
presentes nos sistemas de ficheiros; em disco e é caro;
Eliminar as dependências estruturais presentes nos Existem custos adicionais de hardware;
sistemas de ficheiros; Em caso de falha do sistema, existem normalmente
Redução do tempo destinado ao desenvolvimento de maiores impactos.
aplicações;
Aumenta a flexibilidade do sistema, permitindo uma
maior facilidade nos procedimentos necessários para
efetuar alterações estruturais;
Facilidade na obtenção de informação atualizada.

4
20/10/2013

Modelos utilizados na gestão de bases de Modelos utilizados na gestão de bases de


dados dados

Para estudar ou analisar um sistemas, utilizamos Modelos concetuais são utilizados para se obter uma
modelos. descrição lógica dos sistemas (Modelo Entidade-
Modelo é a representação do sistema. Relacionamento).
Ao longo dos anos, têm vindo a ser delineados vários
modelos para representar um Sistema de Bases de
Dados.
Podemos distinguir os modelos concetuais e os
modelos de implementação.

Modelos utilizados na gestão de bases de


dados Modelos utilizados na gestão de bases de dados

Modelos de implementação descrevem como os Estes modelos podem ser divididos no:
dados estão representadas na base de dados.
Modelo Hierárquico
Modelo em Rede
Modelo Relacional

5
20/10/2013

Modelo Hierárquico Modelo Rede


Uma base de dados
Uma base de dados concebida segundo o modelo concebida segundo o
hierárquico consiste numa coleção de registos em modelo em Rede
também consiste, à
que os dados se encontram relacionados entre si, semelhança do modelo
através de ligações (ponteiros). hierárquico, num conjunto
de dados relacionados
A estrutura hierárquica entre si através de ligações
(ou ponteiros), mas neste
de ligação entre os caso, a estrutura não é
hierárquica ou em forma de
dados torna o aspeto árvore, mas em forma de
rede como se pode ver na
de um diagrama de imagem .
árvore. Isto significa que os dados
podem ser relacionados
uns com os outros de uma
forma mais flexível.

Modelo Relacional Desenvolvimento de Bases de Dados


O modelo relacional procura uma forma de organização dos dados mais 5. Bases de dados relacionais:
simples e, ao mesmo tempo, mais flexível – as tabelas.
A correta estruturação das tabelas e seus relacionamentos garantirá,
a. Conceito de tabela (linhas representando registos e
conjuntamente com um SGBD relacional, um funcionamento coerente e colunas representando campos).
consistente de uma base de dados, relativamente às operações que lhe são b. Conceito de índice. Chaves de indexação simples e
típicas, tais como: consultas, atualizações, acrescentos e eliminações. compostas.
O modelo relacional tornou-se no modelo de bases de dados mais
c. Chaves candidatas. Chaves primárias. Chaves externas.
difundido e utilizado nos sistemas de bases de dados atualmente existentes
- por isso mesmo designados por: Base de Dados Relacionais d. Relações entre tabelas: De um para um, de um para
muitos, de muitos para muitos.

6
20/10/2013

Bases de dados relacionais Bases de dados relacionais


Operações de definição e alteração da estrutura da BD Operações de definição e alteração da estrutura da BD
Definição Alteração

Definir Tipos Alterar


de Dados Criar Estrutura de Eliminar
Criar BD Criar Tabelas Definir Campos OU OU
Tabela Nova Campos Tabela

Criar
Definir Modificar a
Relacionamentos Adicionar um Eliminar um
Definir Chaves Propriedades Definição de um
entre tabelas Campo Campo
Campo

As Tabelas como elementos fundamentais


Bases de dados relacionais do modelo relacional
Operações de manipulação de dados

Os elementos fundamentais de uma base de dados elaborada


Inserir Modificar Eliminar Consultar segundo o modelo relacional são as tabelas - em que a
Inserir Registos OU OU OU
Registos registos registos registos informação é estruturada em campos e registos.

Cada tabela é designada por um nome único dentro de


uma base de dados e corresponde a uma classe de entidades
ou a um relacionamento entre entidades.

7
20/10/2013

As Tabelas como elementos fundamentais As Tabelas como elementos fundamentais


do modelo relacional do modelo relacional
Uma tabela é definida por um conjunto de colunas, Para que uma tabela esteja corretamente
correspondentes aos campos ou atributos de uma entidade constituída, no modelo relacional, deve respeitar as
ou classes de entidades. Cada coluna ou campo da tabela tem seguintes regras:
um nome único dentro da tabela; mas podem existir campos
com o mesmo nome em tabelas distintas.
Não pode haver duas colunas (campos ou atributos) com o
As linhas de uma tabela correspondem aos registos ou mesmo nome; cada coluna é identificada de modo único;
tuplo, ou seja são as ocorrências de cada entidade. Cada linha da tabela representa uma ocorrência única; por
isso, não pode haver registos duplicados;
Não deve haver campos vazios;
Não é permitido incluir mais do que um valor em cada
campo por registo;
Os identificadores dos campos têm que ser atómicos

Índices Índices
Um índice é uma estrutura de dados mantida Um dos benefícios da criação de índices é de que,
internamente pelo SGBD para otimizar o acesso aos quando uma operação a ser efetuada envolver somente o
dados. atributo pertencente ao índice, não haverá a necessidade
de aceder aos dados da tabela.
Os índices guardam internamente, como informação,
apenas os valores dos atributos que são indexados, Os SGBD’s criam automaticamente índices para as
dentro de uma ordem estabelecida pelo algoritmo de chaves primárias das tabelas.
formação do índice.
São usados índices para outros atributos para encontrar
elementos da tabela, ou como critério para ordenar os
elementos ao mostra-los.

8
20/10/2013

As Tabelas como elementos fundamentais


Índices do modelo relacional

Apesar da flexibilidade para a criação de índices, este Atributos chave


recurso deve ser utilizado com critério, pois a Um conceito importante no modelo relacional é o conceito
de chave. Existem vários tipos de chave, que vão ser
manutenção de muitos índices pode degradar a
apresentados de seguida:
performance no processo de atualização do ficheiro (o
que se ganha na consulta on-line, pode perder-se na
Chave candidata
atualização de dados).
Uma chave candidata é um atributo ou um conjunto de
Os índices constituídos que fazem referencia a uma única atributos que permitem identificar de modo unívoco os
coluna são conhecidos como índices primários e os registos (entidades ou ocorrências) de uma tabela.
demais como índices compostos. Todas as chaves possíveis de uma tabela ou entidade - simples
ou composta - são designadas chaves candidatas.

As Tabelas como elementos fundamentais As Tabelas como elementos fundamentais


do modelo relacional do modelo relacional
Chave Primária ou Identificador
De entre as chaves candidatas escolhemos uma para identificar Chave Concatenada ou Composta
de forma única cada tuplo da relação. Esta chave chama-se Verifica-se a existência de uma chave composta ou
Chave primária. Os atributos que formam a chave primária concatenada quando uma entidade ou tabela não tem
surgem sublinhados no esquema da relação. nenhum atributo que por si só seja capaz de identificar
Exemplo : SOCIO(numsocio, nome, morada, telefone, idade) univocamente os registos, mas, reunindo dois ou mais
atributos em conjunto, já se consiga essa identificação unívoca.
Uma chave primária deve respeitar as seguintes
características ou regras:
Ser unívoca
Não nula
Não redundante

9
20/10/2013

As Tabelas como elementos fundamentais


do modelo relacional Relação entre tabelas

Domínio Numa base de dados relacional, a informação encontra-se


A um atributo esta sempre associado um domínio – estruturada em tabelas.
Conjunto de valores que podem ser associados a um atributo.
No entanto, se as tabelas não estiverem relacionadas
Os domínios podem ser classificados em:
entre si, não é possível fazer cruzamento de informação,
ou seja, seria praticamente impossível tratar a informação
Atómicos – Por ex., o domínio do atributo Idade é constituído por
valores indivisíveis (1,2, 3…)
guardada na base de dados.
As tabelas relacionam-se entre si através de campos que
Compostos – Por ex., o atributo nome tem como domínio contém dados comuns.
elementos compostos (Manuel José, José Manuel…)

Tipos de Relações quanto ao número de entidades Tipos de Relações quanto ao número de entidades

Relações unárias - relações que se estabelecem entre Relações binárias - relações que se estabelecem entre
os elementos de uma mesma entidade. os elementos de duas entidades diferentes.
Equipas
Fornecedores R Produtos

Numa base de dados concebida para registar os jogos Os fornecedores de uma empresa e os produtos
entre as equipas de um campeonato podemos considerar adquiridos por uma empresa.
que existe uma única entidade – Equipas – que jogam
entre si.

10
20/10/2013

Tipos de Relações quanto ao número de entidades Tipos de Relacionamentos quanto à cardinalidade


A cardinalidade da relação, tem a ver com a quantidade
Relações ternárias- relações que se estabelecem entre de ocorrências de uma entidade que podem relacionar-se
os elementos de três entidades. com uma outra entidade.

Realizadores R Filmes

Atores Relação de um-para-um (1:1);


Relação de um-para-muitos (1:N) ou muitos-para-um
Registo dos filmes publicitários feitos por uma agência de (N:1);
publicidade, os realizadores desses filmes e os atores ou Relação de muitos-para-muitos (N:M);
modelos intervenientes em cada filme.

Tipos de Relacionamentos quanto à cardinalidade Tipos de Relacionamentos quanto à cardinalidade


Relações de um-para-um (1:1): Relações de um-para-muitos (1:N):

cada elemento ou ocorrência de cada parte (entidade) numa das entidades, cada elemento participa no
participa apenas uma vez no relacionamento com outra relacionamento apenas uma vez, ao passo que na outra
parte. entidade esse elemento pode ter várias ocorrências nesse
mesmo relacionamento

11
20/10/2013

Tipos de Relacionamentos quanto à cardinalidade Tipos de Relações (1:1)


Relações de muitos-para-muitos (N:M): Exemplo:

situação em que cada elemento de cada uma das partes Relacionamento do tipo um-para-um, com participação
pode participar múltiplas vezes no relacionamento. obrigatória das entidades de ambos os lados.
1 1
Professor Disciplina

Suponha-se que um professor apenas leciona uma


disciplina e uma disciplina é lecionada apenas por um
professor.

Tipos de Relações (1:N) Tipos de Relações (1:N)


Exemplo: Exemplo:

Relacionamento do tipo um-para-n, com participação Um professor pode lecionar várias disciplinas e uma
obrigatória das entidades do lado n. disciplina é lecionada apenas por um professor, sendo que
1 N nem todos os professores lecionam disciplinas.
Sócio Cargo

Um sócio pode desempenhar um ou mais cargos numa


empresa (sendo obrigatório desempenhar pelo menos
um) e para um cargo existe apenas um sócio.

12
20/10/2013

Tipos de Relações (1:N) Tipos de Relações (N:M)


Exemplo: Exemplo:
Um professor pode lecionar várias disciplinas e uma
disciplina é lecionada apenas por um professor, sendo que Relacionamento do tipo muitos-para-muitos. Nestes tipos
todos os professores lecionam pelo menos uma disciplina de relacionamentos, quaisquer que sejam os tipos de
participação (obrigatória ou não obrigatória) das duas
mas podem haver disciplinas que não estão a ser tabelas, são sempre necessárias três tabelas.
lecionadas.
N M
Fornecedor Produto

Um fornecedor fornece vários produtos e um


determinado produto pode ser fornecido por vários
fornecedores.

Tipos de Relações (N:M) Desenvolvimento de Bases de Dados


Exemplo: 6. O modelo ER (entidade-relação) para
representação gráfica de bases de dados:
Um professor pode lecionar várias disciplinas e uma a) Entidades.
disciplina pode ser lecionada por vários professores, b) Atributos.
sendo que todos os professores lecionam pelo menos c) Relações.
uma disciplina mas podem haver disciplinas que não estão
d) Integridade e consistência de bases de dados.
a ser lecionadas.

13
20/10/2013

As Tabelas como elementos fundamentais As Tabelas como elementos fundamentais


do modelo relacional do modelo relacional
Termos básicos: Entidade: Objetos ou conceitos que possuem um conjunto de
características comuns, compostas ou caracterizadas por um
conjunto de atributos. Corresponde a uma tabela de uma Base de
A criação de uma Base de Dados está diretamente relacionada com Dados.
a modelização da informação, consistindo este conceito na descrição
dessa mesma informação e na associação existente entre os seus
vários tipos.
Na noção de informação estão presentes conceitos importantes:
Entidade
Atributo

As entidades podem representar pessoas (cidadãos, funcionários,


alunos, etc.), organizações (empresas, escolas, departamentos, etc.),
coisas (produtos, faturas, livros, etc.). Representam-se através de
retângulos.

As Tabelas como elementos fundamentais As Tabelas como elementos fundamentais


do modelo relacional do modelo relacional
Termos básicos: Termos básicos:
Atributos: Características comuns aos objetos ou conceitos Relações: Ligação lógica entre diferentes entidades.
definidos pela Entidade. É qualquer propriedade de uma Entidade. Representam-se através de losangos.
Corresponde aos campos de uma tabela.

Representam-se através de elipses.

14
20/10/2013

Tipos de Relações (1:N) Grau de Associações


Exemplo: Regras de integridade:
Em qualquer modelo de dados é importante definir um
Fornecedores - podem ser definidos por atributos como: conjunto de regras que garantam a adequação dos dados -
nome, código de fornecedor, telefone, etc. regras de integridade.
Produtos - podem ser definidas por atributos como: Existem duas regras de integridade inerentes ao modelo
código de produto, descrição, preço, etc... relacional que são a regra de Integridade de Entidade
e a regra de Integridade Referencial.
Nome Descrição

CodForn Telefone CodProd Preço

N M
Fornecedor Produto

Grau de Associações Desenvolvimento de Bases de Dados


Regras de integridade:
Integridade de Entidade 7. O papel da normalização no desenho de bases de
Esta regra diz-nos que, numa relação, nenhum dos dados:
atributos da chave primária pode ser nulo, isto é, a) Vantagens e desvantagens da normalização.
terá de lhe ser atribuído algum valor. b) 1a, 2a e 3a formas de normalização.
Integridade Referencial
Esta regra diz-nos que, um valor de uma chave externa 8. “Desnormalizar” para atingir melhor performance.
tem obrigatoriamente que existir como elemento da
chave primária da tabela relacionada com aquela chave
externa. (EX: Numa escola um Aluno não pode estar
associado a uma turma, caso ainda não lhe tenha sido
atribuído um número.)

15
20/10/2013

Normalização de Dados Normalização de Dados


Normalizar para quê? Vantagens

Depois de desenvolvido o modelo conceptual (modelo E- Estruturas de dados mais estáveis;


R) é feita a transformação para um modelo lógico (no
caso, o modelo relacional); Elimina a redundância;
Obtêm-se um modelo de dados mais naturais e mais simples;
O conjunto de tabelas obtidas representa a estrutura de Evitam-se os efeitos laterais da alteração;
informação de um modo natural e completo Evitam-se os efeitos laterais da inserção;
(relacionando os diferentes dados a tratar) Evitam-se os efeitos laterais da remoção;
Facilita a exploração e manutenção de ficheiros.
Assegurar o mínimo de redundância possível (repetição
da mesma informação, conjunto de dados);

Normalização de Dados Normalização de Dados


Desvantagens Objetivo:

Favorece a proliferação do número de tabelas; Modificar o conjunto de tabelas obtido das


Favorece a fragmentação exagerada; necessidades de informação ou por transformação do
Perigoso de seguir cegamente. modelo conceptual, para outro conjunto de tabelas
equivalente menos redundante e mais estável.
Conclusão: Normalizar? Sim, mas com bom senso ...

16
20/10/2013

Etapas da Normalização de Dados Dependências Funcionais


Matéria-prima : tabelas não normalizadas O que são ?

1ª Forma Normal (1FN) Por vezes 2 atributos (ou grupos de atributos) estão
retirar os elementos repetidos, de forma a se encontrar numa intrinsecamente ligados entre si (por exemplo o número de
ocorrência apenas um dos valores (eliminar grupos cliente e o nome de cliente);
repetitivos)
Num dado momento, onde na base de dados figurem estes 2
2ª Forma Normal (2FN) atributos, a um mesmo número de cliente corresponderá
necessariamente o mesmo nome; (o inverso pode não ser
qualquer atributo que não seja chave deve depender da verdade!)
totalidade da chave (eliminar dependências parciais)
Diz–se então que o nome de cliente “DEPENDE” do número de
3ª Forma Normal (3FN) cliente ou que o número de cliente “IDENTIFICA” o nome do
nenhum atributo não chave pode depender de outro atributo cliente, isto é, existe uma dependência funcional entre estes 2
não chave (eliminar dependências transitivas) atributos.

Normalização-Exemplo Normalização-Exemplo
Numa escola pretende-se manter informação sobre: Matéria Prima: tabela não normalizada
Os alunos da escola (com informação sobre o seu Número
Aluno
Nome Curso
Código
Disciplina
Disciplina
Código
Professor
Professor Grau Nota
número interno, nome e curso a que pertencem); 1 António MUL 04 AS 112 Paulo M 15

1 António MUL 12 SI 112 Paulo M 17


As disciplinas que são lecionadas na escola (código da 1 António MUL 23 SGBD 115 Ana B 14
disciplina e nome); 2 José MUL 04 AS 112 Paulo M 14

2 José MUL 12 SI 112 Paulo M 10


Os professores contratados pela escola (código do 2 José MUL 03 LP 118 João L 13
professor, nome e grau académico);

As notas obtidas pelos alunos nas disciplinas que


frequentam.

17
20/10/2013

Normalização-Etapas Normalização-Exemplo
Problemas na tabela Nota:
1ª Forma Normal (1FN)
retirar os elementos repetidos, de forma a se Inserção: se quisermos inserir informação sobre uma nova
encontrar numa ocorrência apenas um dos valores disciplina (07) que é dada pelo professor 113; Não é possível inserir
estes dados enquanto não existirem alunos inscritos para esta nova
(eliminar grupos repetitivos) disciplina (o atributo número de aluno faz parte da chave da tabela).
Número Código Código
Nome Curso Disciplina Professor Grau Nota
Aluno Disciplina Professor
Remoção: se quisermos eliminar a informação sobre todos os
Tabela Tabela alunos que têm uma determinada disciplina, então perdemos toda a
Estudante Nota informação dessa disciplina e do respetivo professor.

Número
Nome Curso
Número
Aluno
Código
Disciplina
Disciplina
Código
Professor
Professor Grau Nota Atualização: se quisermos modificar o nome de uma disciplina
Aluno
(por exemplo AS passar a ser DSI) é necessário percorrer toda a
1 04 AS 112 Paulo M 15
1 António MUL tabela e fazer essa modificação para todos os alunos que tivessem
2 José MUL 1 12 SI 112 Paulo M 17 essa disciplina. No caso de falhar a aplicação de modificação em
2 04 AS 112 Paulo M 14
alguma das ocorrências, então teríamos dados inconsistentes.
3 Maria DIR

Normalização-Etapas Normalização-Etapas
Tabela Notas na 1ª Forma Normal 2ª Forma Normal (2FN)
Chave da tabela
Uma tabela está na 2ª Forma normal se está na 1ª Forma
Normal e se todos os atributos que não pertencem à chave
Número Código Código
dependem de toda a chave e não apenas de parte dela.
Disciplina Professor Grau Nota
Aluno Disciplina Professor Número Código Código
Disciplina Professor Grau Nota
Aluno Disciplina Professor
1 04 AS 112 Paulo M 15
Chave e atributos que
1 12 SI 112 Paulo M 17 Atributos que dependem de
dependem da totalidade
parte da chave
da chave
2 04 AS 112 Paulo M 14

Número Código Código Código


Nota Disciplina Professor Grau
Aluno Disciplina Disciplina Professor
O atributo nome da disciplina O atributo nota depende dos atributos
1 04 15 04 AS 112 Paulo M
depende apenas do atributo código Número Aluno e Código Disciplina
da disciplina (que pertence à chave (que são a totalidade da chave da 1 12 17 12 SI 112 Paulo M
da tabela) tabela)
2 04 14 03 LP 118 João L

18
20/10/2013

Normalização-Exemplo Normalização-Etapas
Problemas na tabela Disciplina: Tabela Disciplina
Chave da tabela
Inserção: não podemos inserir informação sobre um novo
professor se não lhe for atribuída pelo menos uma disciplina (a
chave é o código da disciplina). Código
Disciplina
Disciplina
Código
Professor
Professor Grau

04 AS 112 Paulo M
Remoção: se eliminarmos informação sobre determinada 12 SI 112 Paulo M
disciplina que é dada por um professor que não dá mais
04 AS 112 Paulo M
nenhuma disciplina, então perdemos a sua informação.

Atualização: se quisermos alterar o grau de um professor


então temos que percorrer toda a tabela e efetuar alteração Os atributos nome do professor e grau do professor dependem do atributo
em todas as disciplinas que esse professor leciona. código do professor (que não é chave da tabela)

Normalização-Etapas Normalização-Etapas
3.ª Forma Normal (3FN) Resultado Final
Uma tabela está na 3ª Forma normal se está na 2ª Forma
Tabela Aluno Tabela Aluno_Disciplina
Normal e se todos os atributos que não pertencem à chave
não dependem de outros atributos não chave. Número
Aluno
Nome Curso Número
Aluno
Código
Disciplina
Nota

Código
Disciplina
Código
Professor Grau 1 António MUL 1 04 15
Disciplina Professor
2 José MUL 1 12 17
Os restantes atributos
atributos que 3 Maria DIR
constituem a tabela 2 04 14
dependem da chave
Professor
Tabela Disciplina Tabela Professor
Código Código Código Código Código Código
Disciplina Professor Grau Disciplina Professor Grau
Disciplina Professor Professor Disciplina Professor Professor
04 AS 112 112 Paulo M 04 AS 112 112 Paulo M
12 SI 112 118 João L 12 SI 112 118 João L
03 LP 118 03 LP 118

19
20/10/2013

Desnormalizar
A desnormalização consiste no processo de,
conscientemente, se abdicar de informação
totalmente normalizada por motivos que se prendem
com performance e complexidade dos dados.
Os objetivos do processo de normalização são:
Performance: Uma BD completamente normalizada é
composta por um número elevado de tabelas. Quando
realizamos uma consulta, o tempo de resposta, pode ser
demasiado elevado;
Necessidade de apresentar um modelo de dados mais
simples ao utilizador.
Redução da extensão dos comandos SQL.

20

Você também pode gostar