Você está na página 1de 20

Sistemas de Gestão de Base de Dados

• Base de dados:
– registar, actualizar, manter e disponibilizar informação releva nte

• Um sistema de base de dados:


– tem duas componentes fundamentais:
• estrutura física e lógica
• um sistema de gestão de base de dados(SGBD) que assegura a gestão da informação

• SGBD (Sistema de Gestão de Base de Dados


– programas que permitem criar e manipular a base de dados;
– dados estruturados com independência relativamente aos programas de
aplicação que os manipulam

• Porquê utilizar um sistema de base de dados?


– mais flexibilidade
– maior independência

27-10-2001 Sistemas de Gestão de


Base de dados
Aspectos genéricos sobre base de dados

Sistema Monotabela

• Uma das funções do Excel é servir de base de dados (monotabela)


• No Excel, um base de dados consiste numa tabela:
– linhas que correspondem a registos;
– colunas que correspondem a campos;

Campos
registo

Num. Aluno Nome Morada Turma Ano


1 João Sousa Boa Nova 1 10
2 Marco Nuno São Gonçalo 34 10
3 Rui Pestana Funchal 2 10
4 Gabriel Augusto São Jorge 4 11
5 Marco Rebelo Boa Nova 5 12
6 Liliana Santos Funchal 6 12

• Informação armazenada em ficheiros:


– tipo especial de ficheiros: conjunto de registos estruturados em campos

• Conclusões sobre o sistema monotabela:


– adequado para informação que possa ser estruturada apenas com uma tabela.
Ex.:lista de nomes, moradas e telefones.
– limitativa e inadequada para sistemas complexos

27-10-2001 Sistemas de Gestão de


Base de dados
Aspectos genéricos sobre base de dados

Sistema Monotabela

• Exemplo em que não é possível utilizar um sistema monotabela:


– Suponha que queremos registar todas as encomendas feitas numa lo ja de
ferragens por vários clientes.

Cliente Endereço Telefone Produto Modelo Preço Data_Enc Quant


Silva Lisboa 665544 Alicate A1 400 4/3/96 1
Santos Porto 121212 Martelo M1 1500 4/4/96 1
Costa Coimbra 443322 Serra S1 500 4/5/96 1
Castro Faro 234234 Tesoura T1 250 4/6/96 1
Silva Lisboa 665544 Martelo M1 500 4/7/96 1
Silva Lisboa 665544 Tesoura T1 250 4/8/96 1
Costa Coimbra 443322 Alicate A1 500 4/9/96 1
Costa Coimbra 443322 Serra S1 400 4/10/96 1
Castro Faro 234234 Alicate A1 1500 4/11/96 1
Silva Lisboa 665544 Serra S1 400 4/12/96 1

• Redundância:
– repetição desnecessária de dados.
• Solução: utilizar mais do que uma tabela.
– uma tabela para registar informação do cliente;
– uma tabela para registar informação sobre produtos;
– uma tabela para registar as encomendas.
• Tabela que relaciona clientes com produtos através de dois campos

27-10-2001 Sistemas de Gestão de


Base de dados
Aspectos genéricos sobre base de dados

• Solução do problema anterior:

Cliente Encomendas Produtos

CLIENTES PRODUTOS
Código_Cliente Nome Endereço Telefone Código_Produto Produto Modelo Preço
11 Silva Lisboa 665544 101 Martelo M1 250
12 Santo Porto 554433 11 Alicate A1 400
13 Costa Coimbra 332211 121 Tesoura T1 500
14 Castro Faro 443322 131 Serra S1 1500

ENCOMENDAS
Código_Cliente Código_Produto Data_Enc Quantidade
11 111 4/3/96 1
12 101 4/3/96 1
13 131 4/3/96 1
14 121 4/3/96 1
11 101 4/3/96 1
11 121 4/3/96 1
13 111 4/3/96 1
13 131 4/3/96 1
14 111 4/3/96 1
11 131 4/3/96 1

27-10-2001 Sistemas de Gestão de


Base de dados
Niveis de Arquitectura de um SGBD

• Temos três niveis de arquitectura:


– NIVEL FÍSICO
• armazenamento da informação em suportes físico e a forma como estes se encontram
organizados;
– NIVEL CONCEPTUAL
• estruturação e organização da informação de maneira a que esta esteja disponível para
o utilizador final;
– NIVEL DE VISUALIZAÇÃO
• apresentação dos dados ao utilizador final

27-10-2001 Sistemas de Gestão de


Base de dados
Tipos de acessos a ficheiros

• Tipos de acessos ao ficheiros:


– Ficheiro sequencial:
• registos dispostos consecutivamente;
• inserção feita no fim;
• acesso feito sequencialmente, percorrendo todos os registos até chegar ao pretendido;

– Ficheiro de acesso directo:


• cada registo é armazenado e acedido através de uma relação entre o valor de uma chave
e o endereço físico que define a posição do registo;

– Ficheiro de acesso sequencial indexado:


• registos armazenados numa área principal, com uma organização t ipo sequencial, mas
em que é constituída uma tabela de índices.

27-10-2001 Sistemas de Gestão de


Base de dados
Modelo Entidade-Relacionamento

• Modelo Entidade-Relacionamento
– procura criar uma simulação da realidade;
– um conjunto de entidades interagindo umas com outras através de um conjunto
de associações.
• Entidades
– conjunto de elementos do mesmo tipo;
– representadas por rectângulos contendo, no seu interior o nome de entidades;
– caracterizada por um conjunto de atributos.
• Relações
– são representadas por linhas;
– ligar as entidades.

Alunos Disciplinas

• Características do modelo:
– para além das entidades e das associações, há outros factores a ter em conta:
• tipo de relação;
• multiplicidade;
• obrigatoriedade.

27-10-2001 Sistemas de Gestão de


Base de dados
Modelo Entidade-Relacionamento ( DER )

• Tipos relação:
– está relacionada com o número de entidades que participam na relação.
Existem três tipos:
• unários: só participa uma entidade;
• binário: participam duas entidades;

• ternário: participam três entidades.

• Multiplicidade:
– está relacionada com o número de elementos da entidade que participa na
associação. Temos três tipos:
• 1;
• 1..n;
• n;
• Obrigatoriedade
– se entidade é ou não obrigada a participar no relacionamento;

27-10-2001 Sistemas de Gestão de


Base de dados
Atributos

• Os atributos têm domínio:


– conjunto de valores que os atributos podem tomar;

• Tipos de atributos:
– atómicos:
• não é possível a sua decomposição em unidades mais elementares;
• Exemplo: idade de uma pessoa;
– não atómicos:
• contrário dos atómicos;
• Exemplo: nome de uma pessoa;

• Recomendações
– construir entidades sempre com atributos atómicos;
– entidade deve possuir sempre um atributo a identifique sem ambiguidades
(atributos identificadores)

27-10-2001 Sistemas de Gestão de


Base de dados
Modelo Relacional

• Modelo Relacional:
– é o modelo mais utilizado;
– tabelas são os elementos fundamentais deste tipo de modelos;
– cada tabela é constituída por um ou mais campos;

• Propriedades das tabelas e regras da sua constituição:


– Propriedades:
• ordem das colunas não é importante e pode ser alterado;
• ordem das linhas também não é importante, podendo também ser alterada;
• são as responsáveis pela grande potencialidade e flexibilidade do SGBD.

– Regras:
• não pode haver duas colunas com o mesmo nome;
• não deve haver campos vazios;
• domínio de cada atributo deve ser constituído por valores atómicos;
• não deve haver registos duplicados.

27-10-2001 Sistemas de Gestão de


Base de dados
Chaves de uma tabela

• Chaves de uma tabela


– é um campo que identifica de modo único um registo numa tabela;
– Chaves Simples:
• constituídas por um campo;
– Chaves Compostas:
• constituída por mais de um campo;
– Chaves Candidatas:
• todas as chaves possíveis de uma tabela;
– Chaves Primárias:
• chave candidata escolhida para desempenhar o papel de chave

• Características de uma chave primária:


– unívoca:
• valor único para cada registo;
– não nula:
• não pode conter um valor nulo;
– não redundante:
• se for composta não devem ser incluídos mais atributos do que os necessários

• Chave externa
– chave de uma tabela que é incluída noutra.

Chaves externas
Chaves primárias

27-10-2001 Sistemas de Gestão de


Base de dados
Passagem do DER para Modelo Relacional

1ª Situação: necessária uma única tabela:


– relacionamento do tipo um-para-um com participação obrigatória de ambas as
entidades;

2ª Situação: situação em que são necessárias duas tabelas


– relacionamento um-para-um com participação obrigatória da outra;
– relacionamento um-para-n ou n-para-1 com participação obrigatória do lado n;

27-10-2001 Sistemas de Gestão de


Base de dados
Passagem do DER para Modelo Relacional

3ª Situação: situação em que são necessárias três tabelas:


– todos os relacionamento n-para-n;
– todos os relacionamentos de 1-para- n em que não seja obrigatória a
participação do lado n;
– 1-para-1 sem que sem obrigatoriedade de nenhuma das entidades;

27-10-2001 Sistemas de Gestão de


Base de dados
Integridade da informação

• Operações de actualização devem manter a informação consistente.

• Devemos assegurar dois tipos de integridade:


– integridade de entidade:
• valores dos atributos de uma chave primária não podem ser nulos ou iguais a outros
existentes na tabela;
– integridade referencial:
• valor de uma chave externa tem de existir como chave primária da tabela relacionada;

• Fases de um projecto de criação de uma base de dados:


– análise da situação: recolha informação relevante;
– elaboração no papel de um primeiro esboço da estrutura geral da base de dados;
– definição exacta de cada entidade;
– determinação dos relacionamentos;
– revisão da estrutura obtida;
– derivação das tabelas e da base de dados;
– desenvolvimento de um esquema de base de dados num SGBD;
– criação de programas de aplicação com interfaces gráficos.

• Estratégias para a concepção de base de dados


– TOP_DOWN (geral para o particular)
• parte-se de uma análise das necessidades das entidades e tipos de relacionamentos
(modelo entidade-relacionamento) para a determinação das tabelas (modelo
relacional);

– BOTTOM-UP (particular para o geral)


• começa-se por considerar uma ou mais tabelas com os atributos necessários;
• recorre -se a um processo de normalização da informação determinam-se as tabelas
necessárias;
• conjunto de três normas ou regras.

27-10-2001 Sistemas de Gestão de


Base de dados
Normas da estratégia Bottom-Up

• 1ª Forma Normal
– só pode haver campos atómicos;
– não pode haver repetição de registos;

• 2ª Forma Normal
– tem de estar na 2ª Forma Normal;
– cada atributo não chave tem de depender da chave da tabela na totalidade, e não
apenas de uma parte dessa chave:
• chave simples: está na 2ª Forma Normal;
• chave composta: existe um atributo que depende apenas de parte de uma chave, então
não está na 2ª Forma Normal.

27-10-2001 Sistemas de Gestão de


Base de dados
Normas da estratégia Bottom-Up

• 3ª Forma Normal:
– tem de estar na 2ª Forma Normal;
– nenhum atributo não chave pode depender de um atributo que não seja a chave.

27-10-2001 Sistemas de Gestão de


Base de dados
Desenho de uma Base de Dados
Exemplo concreto

• Um clube de vídeo deseja construir uma base de dados de maneira a


possibilitar uma melhor gestão dos seus recursos. A base de dados deve
manter informação dos clientes, cassetes e alugueres destas por parte dos
clientes.

SOLUÇÃO
• Em primeiro lugar devemos proceder à construção de um modelo DER
que espelhe a solução para o nosso problema.
– Podemos começar por recolher informação do texto. Devemos começar por
escolher os candidatos a entidades.

Socios SociosCassetes Cassetes

• Após construído o modelo DER, devemos construir o modelo relacional.


– Devemos seguir os passos indicados em passagem do DER para modelo
relacional.

27-10-2001 Sistemas de Gestão de


Base de dados
Desenho de uma Base de Dados
Exemplo concreto

• Após a construção do modelo relacional, vamos proceder à verificação


das formas normais.
• 1ª Forma Normal:
– só está na primeira forma normal se só contiver campos que permitam valores
atómicos; não deve haver campos repetidos relativamente a uma mesma
categoria de dados.

– No nosso caso existe redundância de informação, pois os campos filme e


AnoRealização serão repetidos várias vezes ao longo da tabela CASSETES.
SOLUÇÃO:
– Construção de mais uma tabela para guardar os dados relativos aos filmes.

• 2ª Forma Normal:
– estar na primeira forma normal; verificar se todos os campos da tabela são
funcionalmente dependentes da chave primária.

– No nosso caso é verdade, pois temos chaves simples.

27-10-2001 Sistemas de Gestão de


Base de dados
Desenho de uma Base de Dados
Exemplo concreto

• 3ª Forma Normal:
– verificar se todos os atributos não chave dependem apenas da chave da tabela;
– No nosso caso:
• todos os campos da tabela SÓCIO dependem do seu campo de ID;
• todos os campos da tabela SÒCIOSCASSETES dependem do seu campo ID;
• todos os campos da tabela CASSETES dependem do seu campo ID;
• todos os campos da tabela FILMES dependem do seu campo ID;

• Obtemos assim um modelo relacional que está totalmente normalizado ,


ou seja, está pronto a ser implementado.

27-10-2001 Sistemas de Gestão de


Base de dados
Desenho de uma Base de Dados
Exercicios

Construa o DER adequado para as seguintes situações:


• O bar “da Esquina” pretende informatizar os seus dados referentes aos
fornecedores. Pretende-se registar numa base de dados os fornecedores e
as encomendas de produtos efectuadas a esse fornecedores, podendo cada
uma dessas encomendas incluir vários produtos.

• No ensino superior, existem várias universidades. Cada universidade


possui um ou mais departamentos. Se nos concentrarmos numa
universidade, temos sempre vários departamentos. Cada departamento
tem sempre um o mais professores, que por sua vez são responsáveis por
assegurar o leccionamento de uma ou mais disciplinas. Essas disciplinas
são frequentadas por um ou mais alunos. Refira-se que um departamento
tem sempre uma ou mais licenciaturas, às quais se encontram sempre
matriculados vários alunos.

27-10-2001 Sistemas de Gestão de


Base de dados

Você também pode gostar