Banco de Dados 1
Banco de Dados 1
Banco de Dados 1
Abstração de dados
O sistema de banco de dados deve garantir uma Estas duas etapas se referem a um sistema de
visão totalmente abstrata do banco de dados para banco de dados ainda não implementado, ou
o usuário, ou seja, para o usuário do banco de seja, que ainda não exista, um novo projeto.
dados pouco importa qual unidade de Para os casos em que o banco de dados já
armazenamento está sendo usada para guardar exista, mas é um sistema legado, por exemplo,
seus dados, contanto que os mesmos estejam ou um sistema muito antigo sem documentação,
disponíveis no momento necessário. o processo de projeto de banco de dados se
Esta abstração se dá em três níveis (Figura 2): dará através da utilização de uma técnica
Nível de visão do usuário: as partes do banco chamada de Engenharia Reversa, que será
de dados que o usuário tem acesso de acordo visto em outra oportunidade.
com a necessidade individual de cada usuário
ou grupo de usuários; Modelo conceitual
Nível conceitual: define quais os dados que É a descrição do BD de maneira independente
estão armazenados e qual o relacionamento ao SGBD, ou seja, define quais os dados que
entre eles; aparecerão no BD, mas sem se importar com a
Nível físico: é o nível mais baixo de abstração, implementação que se dará ao BD. Desta
em que define efetivamente de que maneira forma, há uma abstração em nível de SGBD.
os dados estão armazenados. Uma das técnicas mais utilizadas dentre os
profissionais da área é a abordagem entidade-
relacionamento (ER), onde o modelo é
representado graficamente através do diagrama
entidade-relacionamento (DER) (Figura 3).
Modelo lógico
Cardinalidade e Restrições
Descreve o BD no nível do SGBD, ou seja,
A cardinalidade refere-se à quantidade de instâncias de
depende do tipo particular de SGBD que será
uma entidade que podem estar associadas a uma
usado. Não podemos confundir com o Software instância de outra entidade em um relacionamento. As
que será usado. O tipo de SGBD que o modelo cardinalidades comuns incluem:
lógico trata é se o mesmo é relacional, orientado a Um para Um (1:1): Uma instância de uma entidade
objetos, hierárquico, etc. está associada a uma única instância de outra
Abordaremos o SGBD relacional, por serem os entidade. Exemplo: cada pessoa possui um CPF.
mais difundidos. Nele, os dados são organizados Um para Muitos (1
em tabelas
): Uma instância de uma entidade pode estar
associada a várias instâncias de outra entidade.
Exemplo: um autor pode escrever vários livros.
Muitos para Muitos (M
Importância da Cardinalidade: A
Relacionamento: Define como as entidades cardinalidade é crucial para:
estão relacionadas entre si. Por exemplo, um Modelagem de Dados Precisa: Reflete
"Cliente" faz um "Pedido". corretamente as regras de negócios e
O Que é Cardinalidade?: A cardinalidade em um
as relações do mundo real entre
banco de dados relacional define o número de
entidades.
ocorrências de uma entidade que podem ou
devem estar associadas a uma ocorrência de
Integridade Referencial: Garante que
outra entidade. os dados sejam consistentes e que as
relações entre as tabelas sejam
Ela especifica a quantidade de entidades que corretamente mantidas.
podem participar de um relacionamento. Otimização de Consultas: Influencia a
A cardinalidade é essencial para entender as maneira como consultas SQL são
regras de negócios e garantir que o banco de otimizadas e executadas, impactando
dados esteja corretamente estruturado para diretamente a performance do banco
representar o mundo real. Existem três tipos
de dados.
principais de cardinalidade em um DER:
Exemplo de Modelagem de um DER:
Um-para-Um (1:1): Uma ocorrência de uma
entidade está associada a, no máximo, uma
Considere um banco de dados para uma
ocorrência de outra entidade. Por exemplo, livraria com as seguintes entidades:
no relacionamento entre "Pessoa" e "Cliente" (atributos: ID, Nome, Email),
"Passaporte", cada pessoa tem um único "Pedido" (atributos: ID, Data, Valor Total) e
passaporte, e cada passaporte é emitido para "Livro" (atributos: ISBN, Título, Autor).
uma única pessoa. Relacionamentos: Um "Cliente" pode fazer
Um-para-Muitos (1:N): Uma ocorrência de muitos "Pedidos" (1:N). Um "Pedido" pode
uma entidade pode estar associada a muitas incluir muitos "Livros", e um "Livro" pode
ocorrências de outra entidade, mas cada
ser parte de muitos "Pedidos" (M:N).
ocorrência da segunda entidade está
Conclusão: A cardinalidade em um DER é
associada a, no máximo, uma ocorrência da
primeira entidade. Por exemplo, um "Cliente"
fundamental para a modelagem de dados
pode fazer muitos "Pedidos", mas cada eficaz, ajudando a representar
pedido pertence a um único cliente. corretamente as regras de negócios e
Muitos-para-Muitos (M:N): Muitas ocorrências garantir a integridade dos dados no banco
de uma entidade podem estar associadas a de dados relacional. Compreender e
muitas ocorrências de outra entidade. Por aplicar corretamente a cardinalidade
exemplo, um "Aluno" pode se inscrever em permite criar estruturas de banco de dados
muitos "Cursos", e cada curso pode ter que são eficientes, escaláveis e de fácil
muitos alunos.
manutenção.
Aluna Adila Zaira Oliveira