Escolar Documentos
Profissional Documentos
Cultura Documentos
Sumário
.......................................................................................................................................................................................
O CONCEITO DE BD................................................................................................................................................ 4
SGBD............................................................................................................................................................................ 16
SBD............................................................................................................................................................................... 20
ATRIBUTOS................................................................................................................................................................ 54
ENTIDADES................................................................................................................................................................ 60
RELACIONAMENTOS............................................................................................................................................... 63
NOTAÇÕES................................................................................................................................................................. 80
ENTIDADES ASSOCIATIVAS................................................................................................................................. 91
GENERALIZAÇÕES E ESPECIALIZAÇÕES......................................................................................................... 93
BANCOS DE DADOS................................................................................................................................................ 98
2 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
GABARITO.................................................................................................................................................................. 124
3 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
O conceito de BD
O objeto deste capítulo da aula são os bancos de dados (BDs). Vamos buscar introduzir
o que são eles, para que servem e suas principais características.
Para começarmos a entender o que é um BD, vamos utilizar uma definição bem
simples presente no livro Sistemas de Bancos de Dados dos autores Elmasri & Navathe
(2011). Esse livro é bastante utilizado pelas bancas na hora de elaborar questões:
Você pode não saber, mas com certeza já teve contato com vários bancos de dados de
forma indireta. Os sistemas de computador geralmente utilizam algum tipo de BD para
armazenar os mais diversos dados a serem acessados.
4 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Por exemplo, quando você vai comprar um produto em uma farmácia, o atendente
escaneia o código de barras e o sistema retorna o preço daquele item. Você paga com
seu cartão de débito e recebe a nota fiscal. Essa simples operação de compra e venda
envolve diversas consultas a bancos de dados, incluindo ao BD da própria farmácia para
verificar o preço do produto e registrar a venda, ao BD do seu banco para verificar seu
saldo e debitar o valor, ao BD do órgão fiscal do estado para verificar a alíquota e obter
os dados necessários para emitir a nota fiscal e por aí vai...
Produto Valor
Remédio X R$ 30,00
5 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Já alguns sistemas mais modernos possuem alguns recursos especiais para armazenar
dados não estruturados, como recursos multimídia (imagens, filmes, áudio), textos
grandes, postagens em redes sociais e etc. Esses bancos de dados estão fortemente
relacionados a aplicações de novas tecnologias, como big data.
Vamos resumir o que vimos até aqui para você não esquecer:
6 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Por exemplo, você poderia tomar o site do Direção Concursos, abrir um curso e ver que
ele é uma coleção de dados (os arquivos e vídeos das aulas, por exemplo) relacionados
uns aos outros, pois pertencem ao mesmo curso. Você poderia chegar à conclusão de
que o seu curso é um banco de dados! E isso não estaria completamente incorreto, pois
está bem adequado à definição que trouxemos, não é?
É importante que você tenha em mente que um banco de dados é uma estrutura
específica, criada e gerenciada por um tipo de sistema complexo chamado Sistema de
Gerenciamento de Banco de Dados. Essas estruturas têm três características
fundamentais, segundo Elmasri & Navathe (2011):
7 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Um detalhe importante é que esse cenário do mundo real que se quer representar é
chamado de minimundo ou universo de discurso. Veja que o nome faz todo sentido,
pois “minimundo” = um pequeno pedaço do mundo.
Significado inerente
8 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Esta propriedade implica dizer que um conjunto de dados aleatórios não é um banco
de dados. Assim, se você pega um conjunto de arquivos do seu computador ou um
punhado de aulas no site do Direção Concursos, não dá pra dizer que isso é um banco
de dados.
Propósito específico
9 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Um banco de dados é uma coleção de dados que são organizados de forma randômica,
sem significado implícito e de tamanho variável, e projetados para atender a uma
proposta específica de alta complexidade, de acordo com o interesse dos usuários.
RESOLUÇÃO:
Ora, acabamos de ver que os bancos de dados têm um significado inerente e são
organizados de forma coerente, ou seja, um conjunto de dados randômicos (aleatórios)
sem significado implícito não é um BD.
Gabarito: E
RESOLUÇÃO:
Já vimos também que o banco de dados é uma coleção de dados relacionados, então a
primeira parte da questão está correta. Na verdade, eu trouxe esta questão da FCC para
você entender que domínio, neste contexto, significa uma área de interesse. Ou seja, o
banco de dados representa informações a respeito de uma área específica do mundo
real, o que também é uma característica do BD.
10 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Veremos mais a seguir que domínio tem outro significado dentro de bancos de dados
relacionais, então você precisa ficar atento sempre ao contexto.
Gabarito: C
11 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Os bancos de dados servem como meros repositórios de dados, ou seja, eles possuem
um conjunto de funcionalidades que se destina a manter os dados armazenados e
disponíveis para quem estiver interessado neles possa consultá-los ou manipulá-los.
Com isso em mente, temos que diversas pessoas, com propósitos distintos, devem ter
acesso aos dados. Por exemplo, se temos um BD que armazena dados de um órgão
público, vários usuários como os administradores do sistema, os servidores do órgão e
os cidadãos que acessam os dados abertos têm interesse em consultar e/ou modificar
as informações presentes no BD, a depender da sua finalidade.
Da mesma maneira, muitos sistemas do órgão devem ter acesso a esses dados
também. São os chamados programas ou sistemas de aplicação, que são aqueles
programas de computador que se destinam a uma finalidade específica dentro da
organização. Podemos exemplificar com um sistema que gerencia os processos
licitatórios, o sistema de ponto eletrônico dos servidores, o próprio portal da
transparência que disponibiliza os dados para o público amplo... enfim, o conjunto de
sistemas que acessa os dados do banco vai variar bastante de cenário para cenário. Aqui
no Direção Concursos, por exemplo, nosso site poderia ser considerado também um
programa de aplicação.
A moral da história aqui é que esse acesso aos bancos de dados não é feito de forma
direta, pois é necessário que toda a interação se dê através de um Sistema de
Gerenciamento de Bancos de Dados (SGBD).
12 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
simplificado) para que você tenha uma noção geral do que estaremos falando:
13 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Na prática, os BDs costumam ser compostos por arquivos especiais que armazenam
todos os dados em um formato que o SGBD consegue compreender e gerenciar –
lembre-se que toda a interação com os dados é realizada através do SGBD!
14 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Por exemplo, em um SGBD relacional (o tipo mais comum de SGBD), os dados são
armazenados em tabelas. O catálogo irá conter informações sobre todas as tabelas do
sistema, como o nome da tabela, as colunas que a compõem, o tipo de dados presente
em cada coluna (se é um número, texto, data, etc.), dentre outras regras e restrições.
15 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
SGBD
Agora vamos entrar em maiores detalhes sobre o que faz o Sistema de Gerenciamento
de Banco de Dados (SGBD) e como podemos definir um Sistema de Banco de Dados
(SBD).
Os SGBDs permitem que se realize várias tarefas, como definir, construir, manipular e
compartilhar bancos de dados, dentre outras funções. Esses sistemas costumam ser
conjuntos de softwares complexos que contam com inúmeras funcionalidades.
16 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Como citam Elmasri & Navathe, os SGBDs têm quatro funções principais:
17 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Assim, essa abstração é a tradução que o SGBD faz para nos exibir os dados nos fo
rmatos adequados e organizados nas estruturas descritas no catálogo, em um for
mato mais facilmente compreensível para os seres humanos.
18 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Desdobrando e expandindo essas funções dos SGBDs, temos mais alguns itens que
podem ser alvo de cobrança na sua prova:
O SGBD também permite criar e gerenciar backups, que são cópias periódicas de
segurança feitas para resguardar os dados. Os backups geralmente são compactados
(para diminuir seu tamanho) e criptografados. Também tem funcionalidades relativas à
performance do acesso aos dados, por meio de criação de estruturas chamadas
índices e pela otimização do fluxo interno de execução das consultas. Não entraremos
em maiores detalhes a respeito desses pontos agora.
19 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
SBD
Já Sistema de Banco de Dados (SBD) é um conceito que envolve toda essa cadeia de
estruturas e aplicações que acabamos de estudar. Em linhas gerais, podemos dizer que
ele é o conjunto do banco de dados e do sistema utilizado para gerenciá-lo:
SBD = SGBD + BD
Você pode ter observado que o nosso diagrama lá no começo da seção incluiu também
a aplicação ou as consultas que são direcionadas ao SGBD como sendo parte do SBD.
Nesse sentido, C. J. Date (1984) diz que um sistema de banco de dados tem quatro
componentes: dados, hardware, software e usuários.
No entanto, não encontrei tantas questões explorando essas diferenças entre SBD,
SGBD e Bancos de Dados, então não se preocupe em ter um rigor muito forte nas
questões de prova. Creio que as bancas tendem a evitar explorar essas pequenas
contradições teóricas e focar em aspectos mais amplos dos conceitos. Veja a dica a
seguir!
20 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Server da Microsoft, está se adquirindo um SGBD, que irá permitir a criação e o ger
enciamento de bancos de dados. Esse SGBD irá fazer parte do SBD – Sistema de B
ancos de Dados.
No entanto, note que muitas vezes as bancas irão utilizar o termo “banco de dado
s” em sentido amplo, como por exemplo na afirmativa “um banco de dados permit
e os acessos simultâneos de múltiplos usuários”. Isso é comum e não necessariam
ente estará incorreto porque a banca não citou expressamente o SGBD.
Na prática, você deve ter o seguinte cuidado ao marcar: identifique se o ponto cent
ral da questão é diferenciar os conceitos de SGBD, SBD e banco de dados – se for, v
ocê deve lembrar das nossas definições exatas para julgar o item. Já se não for esse
o propósito, a banca pode usar os termos sem muito rigor teórico, podendo simple
smente estar usando o termo “banco de dados” em sentido amplo, para represent
ar o sistema de bancos de dados como um todo, o que irá englobar também as fu
nções do SGBD.
21 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
As operações que incluem um ou mais acessos ao banco de dados, seja para ler ou
para escrever dados, são conhecidas como transações. Assim, toda ação que um
usuário ou programa de aplicação irá realizar para interagir com o BD irá envolver uma
ou mais transações.
Uma transação pode ser tanto simples, como aquela que envolve somente a leitura de
um dado pontual dentro do BD, como complexa, envolvendo dezenas de operações de
leitura e escrita e cálculos complexos entre elas. Essas transações podem ser
executadas de forma breve ou demorada, tudo vai depender de sua complexidade e de
outros vários fatores relativos à configuração e utilização do SGBD.
Esses fatores podem trazer alguns problemas e anomalias que devem ser evitados nos
bancos de dados. Os SGBDs tradicionais costumam garantir um conjunto de
propriedades para evitar problemas advindos dessas e de outras situações. Essas
propriedades são conhecidas no acrônimo ACID, um conjunto de quatro propriedades
relativas às transações:
22 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Ou seja, não é possível tomar uma transação, dividi-la em duas ou três partes, executar
em momentos diferentes e dizer que a transação foi realizada. Não é assim que
funciona!
Isso implica dizer que caso haja uma falha qualquer no meio da execução de uma
transação que faz diversas operações sobre o banco de dados, o que já havia sido feito
até o momento do erro deve ser revertido. Ou seja, podemos resumir que os resultados
parciais da transação não devem ser gravados no banco de dados. Uma transação
deve ser executada por completo ou não produzirá efeitos no banco de dados.
Isso é importante porque as transações são definidas pelo desenvolvedor para serem
executadas do começo ao fim. O produto intermediário, quando somente alguns
passos foram seguidos, não seria um resultado desejado e, portanto, não deve produzir
efeitos no BD!
Para exemplificar, imagine que foi definida uma regra que determina que o CPF de
cada pessoa é único em uma tabela. Dessa forma, em respeito à propriedade da
consistência, nenhuma transação pode criar um novo registro de uma pessoa com o
CPF igual ao de outra, pois isso violaria às regras definidas previamente.
23 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Para ilustrar uma possível anomalia que poderia ocorrer sem esse isolamento, veja o
exemplo a seguir:
T1, depois T2: Produto passa a custar R$110, depois recebe o desconto de 10% e passa a
custar R$99.
T2, depois T1: Produto recebe o desconto de 10%, passa a custar R$90 e depois recebe
o aumento de R$10, passando a custar R$100.
Veja que temos duas possibilidades diferentes para o dado em questão: Se adotamos a
ordem T1 -> T2, o valor final é R$ 99; se adotamos a ordem T2 -> T1, o valor final é R$
100.
1º Momento:
2º Momento:
24 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
T1: Aplica o acréscimo de R$10 sobre o valor lido anteriormente, obtendo o valor de
R$110.
T2: Aplica o desconto de 10% sobre o valor lido anteriormente, obtendo o valor de R$90.
3º Momento:
4º Momento:
Com a propriedade de isolamento, esse tipo de situação não ocorreria. O SGBD utiliza
um sistema de controle de concorrência para gerenciar essas múltiplas transações
simultâneas. Esse sistema não necessariamente faz uma transação esperar pela outra,
mas adota alguns mecanismos especiais destinados a garantir o resultado final correto,
como se essas transações estivessem sendo executadas numa certa ordem. Esses
mecanismos são mais complexos e não serão alvo do nosso estudo detalhado nesse
momento!
Dica para a prova: As bancas costumam tentar enganar o candidato dizendo que
o SGBD irá garantir o acesso simultâneo de dois usuários tentando modificar/ler
o mesmo dado ao mesmo tempo. Isso não está correto! O que o SGBD faz no contr
ole de concorrência é garantir os resultados corretos das transações simultâneas,
como se elas estivessem sendo executadas de forma sequencial. Para garantir ess
es resultados corretos, pode ser necessário que uma das transações envolvidas pre
cise aguardar a outra finalizar uma ou mais operações que esteja realizando.
25 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Durabilidade: Essa última propriedade é a mais simples, na minha opinião. Ela diz que
as alterações realizadas por uma transação devem persistir no banco de dados. Ou seja,
uma vez que uma transação foi finalizada com sucesso, mesmo que posteriormente
falte energia ou o BD sofra algum tipo de falha, os resultados devem permanecer
gravados.
Após um banco de dados ser criado, o administrador executa uma série de tarefas para
dar permissão de acesso aos usuários que necessitam ler e gravar informações na base
de dados. A responsabilidade de gerir os acessos ao banco de dados é do sistema
gerenciador de banco de dados (SGBD).
RESOLUÇÃO:
Como vimos, uma das funções do SGBD é realizar o controle de acesso ao banco (ou
base) de dados. Esse controle visa restringir o acesso de pessoas não autorizadas a um
determinado objeto (uma tabela específica, por exemplo), a conjuntos de objetos ou até
mesmo ao banco de dados inteiro.
Gabarito: C
RESOLUÇÃO:
26 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Se você se lembrar das propriedades ACID, vai ver que a afirmativa está errada. A
primeira característica das transações é a atomicidade, que define que as transações
são indivisíveis.
Gabarito: E
27 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Processamento de Arquivos
Nesse cenário, mesmo que esses três sistemas desse órgão público utilizem dados
similares, cada um terá seu arquivo de dados específico. Por exemplo, o portal da
transparência pode armazenar dados de servidores em um arquivo CSV, o cadastro de
fichas funcionais uma planilha no Excel e o ponto eletrônico um outro tipo de registro
em arquivos de texto.
28 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Só para que você fique sabendo (e porque já vi cair em prova), CSV é um formato d
e arquivo que utiliza separadores (comumente vírgulas) e quebras de linha para de
limitar os registros e atributos dos dados. Ao utilizar esta maneira sistemática de
organização, os dados se tornam facilmente compreensíveis para as aplicações.
Veja o exemplo a seguir para entender melhor. Nele, cada linha contém o registro
de uma escola e cada valor separado por vírgula diz respeito a uma característica
(atributo) dessa escola:
29 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Essa abordagem tradicional não parece a melhor solução para todos os casos, não é?
Quando a complexidade do universo de dados de uma organização vai crescendo,
esses defeitos vão ficando cada vez mais graves. A abordagem de banco de dados, por
sua vez, visa consolidar os dados em um único repositório, diminuindo a redundância
dos dados e trazendo soluções para diversos desses problemas, se mostrando uma
solução adequada para a manutenção de conjuntos de dados em várias situações.
30 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
1. Natureza autodescritiva:
31 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Um detalhe importante que você deve memorizar é que existe um conceito parecido
com o catálogo que é o de dicionário de dados. Alguns autores consideram o catálogo
e o dicionário como sendo a mesma coisa, outros não. Se a banca quiser diferenciar os
dois conceitos em alguma questão, você pode assumir que o dicionário de dados é um
conceito mais amplo do que o catálogo.
Para esses casos em que há essa diferenciação, você deve gravar que o dicionário
também guarda os metadados a respeito de todas as estruturas do banco de dados,
seus tipos de dados, restrições, dentre outras informações também presentes no
catálogo.
Além disso, o dicionário irá incluir também uma documentação que trata do conteúdo
e da estrutura do banco de dados. Silberschatz (2011) aponta que informações sobre
perfis de usuário e suas autorizações, estatísticas como número de registros em cada
tabela e informações a respeito de índices também podem ser armazenadas nos
dicionários. Esses são conceitos que ainda iremos ver melhor, então não se preocupe
tanto em entender o que cada um quer dizer por enquanto.
32 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
33 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Para entender melhor no que consiste este item, observe a imagem acima. Considere
que a aplicação trabalha com dados do MEC, lendo um arquivo cujos registros de dados
consistem sempre em quatro campos na sequência: UF, Município, População e
Escola.
Agora considere que removemos uma das colunas do arquivo, por exemplo a de
População. Na abordagem de processamento de arquivo, quando alteramos a estrutura
do arquivo, mesmo que o programa não utilize essa informação, poderia ser necessário
alterar o programa de aplicação para “entender” o novo formato do arquivo, senão o
sistema irá produzir um erro!
Na abordagem de banco de dados isso não ocorre. Como a definição a respeito das
estruturas dos dados está armazenada separadamente no catálogo, alterações no
esquema podem ocorrer sem “quebrar” as aplicações que estão utilizando o BD. Se o
programa de aplicação já não utiliza determinada informação, podemos removê-la do
esquema do banco de dados sem que isso represente nenhum prejuízo para a leitura
dos dados.
Esta característica é mais simples. Para entendê-la, você deve se lembrar que a
interação dos usuários e dos programas de aplicação com um banco de dados se dá
através de consultas de uma linguagem de programação. Nos bancos de dados
relacionais, que são os mais populares, é utilizada uma linguagem chamada SQL.
As consultas nessa linguagem definem como você quer ver o resultado dos dados,
então é possível definir mil e uma maneiras com que você quer associar os dados das
diferentes estruturas de armazenamento para visualizá-los. Você pode combinar dados
de estruturas diferentes, fazer operações matemáticas, agregá-los, ordená-los de
diferentes formas, e assim sucessivamente.
Assim, usuários diferentes que tenham requisitos diferentes sobre a maneira com que
devem enxergar os dados terão acesso a visões diferentes. Para ficar no exemplo
34 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Os bancos de dados são feitos para que várias pessoas possam utilizá-los. Assim, há
mecanismos para gerenciar esses múltiplos acessos. É possível gerenciar que usuários
devem ter acesso a que partes do banco de dados, coibindo o acesso de pessoas não
autorizadas a determinados dados.
Além disso, os SGBDs permitem dar tratamento adequado a situações em que mais de
uma pessoa tenta realizar operações sobre o mesmo dado ao mesmo tempo – aquele
caso das transações concorrentes. A propriedade que diz respeito a essas múltiplas
transações simultâneas em relação aos dados é chamada controle de concorrência. Os
SGBDs irão garantir resultados corretos dessas operações concorrentes, como se elas
estivessem sendo executadas de forma sequencial.
35 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
RESOLUÇÃO:
É isso mesmo! A independência dos dados permite que se altere a estrutura do BD (não
se preocupe com essa história de lógica ou física por enquanto) sem que sejam
necessárias modificações nos programas ou aplicativos.
36 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Gabarito: C
(CESPE – TCE/SC – 2016) Com relação aos bancos de dados relacionais, julgue o
próximo item.
RESOLUÇÃO:
É uma definição bem parecida com a nossa. O texto está correto. Os metadados
armazenados no catálogo possuem informações a respeito da estrutura do banco de
dados e sobre as diversas restrições.
Gabarito: C
O SGBD proporciona um conjunto de programas que permite o acesso aos dados sem
exposição dos detalhes de representação e armazenamento de dados, por meio de
uma visão abstrata dos dados, conhecida como independência de dados.
RESOLUÇÃO:
Nesse caso específico, em outras palavras, o examinador quis dizer que a independência
de dados é a característica de abstrair os detalhes da representação e armazenamento
37 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
dos dados. Não deixa de estar correto, já que o programa de aplicação releva os
detalhes da implementação do BD, trazendo assim a possibilidade de se realizar
alterações no banco sem precisar alterar o programa.
Gabarito: C
38 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Projetando e prototipando um BD
Nesta seção, vou te apresentar algumas noções de modelagem de BD. Aqui vamos
falar do processo que é realizado desde a concepção do banco de dados, em que é
representado o minimundo, até a implementação propriamente dita no SGBD.
Essas três etapas obedecem a um fluxo que vai da definição mais abstrata até aquele
modelo mais concreto, mais próximo do sistema em si. A abstração aqui é um conceito
da informática que está relacionada ao nível de detalhes específicos dos sistemas que
são tratados.
Para entender melhor, imagine que você quer mandar construir uma casa e faz um
desenho de como quer que ela fique, basicamente um esboço que mostra onde vão as
portas, paredes e janelas. Esse seria um modelo conceitual. Já quando você contratar o
escritório de arquitetura/engenharia responsável pela obra, eles irão produzir um
projeto executivo detalhado, fornecendo um verdadeiro guia de como será realizada a
obra pela equipe que irá fazer a construção. Esse projeto estaria mais associado ao
modelo físico do BD.
Vamos detalhar melhor essas etapas a seguir para que você possa compreender bem.
39 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Modelo/Projeto Conceitual
O modelo conceitual, em teoria, ainda não serve de guia direto para a implementação
no banco de dados. Não estamos nos preocupando em representar estruturas
exatamente como elas irão ser criadas no banco de dados. O modelo conceitual serve
de referência para uma implementação futura do banco de dados, ou seja, geralmente
é realizada uma tradução em modelo lógico (a etapa seguinte de modelagem) para
que a efetiva implementação possa ser realizada.
40 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
41 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Vamos prosseguir!
Modelo/Projeto Lógico
Assim, um projeto lógico vai depender do modelo de SGBD adotado. Existem vários
modelos de SGBD, o que inclui o modelo relacional, orientado a objetos, objeto-
relacional, hierárquico, em rede, dentre outros! O modelo mais popular é o modelo
relacional.
Veja que esse termo “modelo de SGBD” pode confundir um pouco com esses mod
elos conceitual – lógico – físico, então tome cuidado. Os termos “modelo de SGBD”
ou “modelo de dados” costumam ser empregados para distinguir os diferentes tip
os de organização de bancos de dados. O modelo relacional organiza os dados em
tabelas, o modelo hierárquico em uma estrutura de arvore hierárquica, e por aí vai!
Para exemplificar uma aplicação do projeto lógico, tome a informação de que os SGBDs
relacionais armazenam os dados em tabelas. Nesse caso, um projeto lógico feito para
um banco de dados relacional já irá contar com toda a representação de quais tabelas
irão fazer parte do modelo, de todas as outras principais estruturas que fazem parte de
um banco de dados relacional. Isso faz com que o modelo lógico, como já dissemos,
seja bem atrelado ao modelo de SGBD adotado.
42 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
No entanto, note que um mesmo modelo lógico pode servir para diferentes SGBDs do
mesmo modelo. Existem vários fabricantes que ofertam SGBDs relacionais, como
Oracle, MySQL, Microsoft SQL Server, etc. Eles possuem características diferentes, mas
se o modelo de SGBD adotado é o mesmo (no nosso exemplo, o relacional), será
possível reutilizar um projeto
Ate
nçã
o!
Os modelos de SGBD definem como serão armazenados os dados no
banco de dados. O modelo mais tradicional é o relacional, mas existe
m também o modelo hierárquico, orientado a objetos, objeto-relacion
al e em rede, por exemplo.
43 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
O modelo lógico também pode ser representado de outras formas, incluindo de forma
textual, mas é mais comum que esteja representado dessa maneira acima,
relativamente parecido com um modelo conceitual, mas contendo mais alguns
detalhes a respeito das estruturas que serão implementadas. A tradução do modelo
conceitual em um modelo lógico pode implicar algumas alterações para adequar o
cenário descrito no modelo conceitual ao modelo de SGBD escolhido.
Modelo/Projeto Físico
44 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
É fácil perceber que essa modelagem vai ser sim dependente de um SGBD específico e
das estruturas de armazenamento utilizadas. Dessa maneira, também consideramos
que o modelo físico tem o menor grau de abstração dos modelos representados. Ou
seja, nada de representar conceitos omitindo detalhes do SGBD. Aqui é a ferramenta e a
tecnologia em seu estado mais puro.
Independência de Dados
O modelo lógico, por sua vez, representa um mapa para a implementação no modelo
de SGBD escolhido. Por fim, o modelo físico define detalhes a respeito do nível físico do
SGBD, o que irá incluir tarefas mais tecnicamente complexas, como a definição de
índices, caminhos de acesso e organização dos arquivos internos.
45 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
parecido pode ser dito em relação aos nossos modelos, tendo-se assim o conceito de
independência de dados!
RESOLUÇÃO:
46 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Gabarito: E
(CESPE – STM – 2018) Acerca dos conceitos de normalização de dados e dos modelos
de dados, julgue o item subsequente.
RESOLUÇÃO:
Lembra que falamos que os modelos mais próximos aos usuários são os mais abstratos?
É isso mesmo. Os modelos utilizados pelos programadores têm que ser menos
abstratos, pois é necessário definir mais detalhes referentes à implementação dos
sistemas.
Gabarito: C
Os autores dessa organização conceitual apontam que seu objetivo é representar três
das características da abordagem de banco de dados:
47 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
48 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
para a grupos de usuários. Dessa forma, serão omitidos detalhes a respeito das
estruturas internas de armazenamento representadas no esquema interno.
A partir dessas últimas informações, podemos concluir esses dois esquemas (interno e
conceitual) não são diagramas ou projetos postos no papel, mas sim as descrições das
estruturas em diferentes pontos de vista.
Por fim, temos que o terceiro nível, o nível externo, inclui uma série de esquemas
externos, também chamados de visões de usuário. Cada um desses esquemas diz
respeito às perspectivas de diferentes usuários em relação ao esquema do banco de
dados, ou seja, eles vão conter somente as estruturas de interesse de cada um,
omitindo as demais.
Elmasri & Navathe ressaltam ainda que poucos SGBDs separam esses três níveis de
forma completa e explícita, mas, de modo geral, dão suporte a esse tipo de organização.
Não vamos entrar em detalhes de como se dá cada uma dessas implementações, pois
foge ao escopo da nossa aula.
Por fim, é importante também ressaltar que os dados estão sempre armazenados no
nível físico, interno, independentemente de estarem representados nos demais. Para
que se represente os dados em algum outro esquema, é necessário que se modifique
as representações dos dados para atender às características desse esquema.
49 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
· A independência física de dados, por sua vez, é a característica que permite
alterar o esquema interno sem realizar modificações no esquema conceitual (ou, p
or consequência, nos esquemas externos).
50 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
51 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
As entidades são as “coisas” do mundo real que desejamos representar. Mas, calma!
Coisa aqui não é no sentido físico estrito da palavra, ok? Uma entidade não é
necessariamente um objeto tangível. As entidades podem representar coisas que
possuam ou não substância física. As entidades são representadas no diagrama ER
pelos retângulos.
Seguindo adiante, temos que cada uma das entidades possui características associadas
a elas, que no modelo ER estão representadas na forma de atributos. Esses atributos
são as elipses no diagrama, aqueles círculos alongados que ficam conectados a cada
entidade.
Um atributo pode ter como valores um nome, um código, um valor numérico, uma
data... enfim, vários tipos de dado que poderão ser utilizados para caracterizar a
entidade a que estão associados. Como exemplo, veja no diagrama acima que a
entidade Aluno tem os atributos Matrícula, Nome, Telefone, Dt. Nascimento e Idade.
52 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Se formos adotar esse entendimento formal, “uma entidade” na verdade seria som
ente uma ocorrência da entidade (por exemplo, um aluno específico chamado Pe
drinho). Já “conjunto de entidades” seria o termo adequado para se referir ao retân
gulo do modelo ER (o conjunto de todos os alunos).
Por que eu estou dizendo isso a você? Porque as bancas podem ser mais preciosis
tas, chamado de “conjuntos de entidades”, ou não ligarem muito para isso, chama
ndo apenas de “entidades” em suas questões. Então você pode ver a mesma banc
a, em provas diferentes, chamando:
53 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Os Componentes do Modelo ER
Bom, agora que já introduzimos de maneira superficial o modelo ER, podemos começar
a falar de cada um de seus componentes. Sempre prefiro começar essa explicação
pelos atributos, pois compreendê-los bem nos ajuda a compreender também alguns
conceitos das entidades e dos relacionamentos.
Vamos lá?
Atributos
Os atributos são as características que descrevem uma entidade (ou relacionamento,
mas ainda vamos ver ) e são representados por elipses conectadas à entidade em
questão. Por exemplo, a entidade Professor tem os atributos CPF, Nome e Endereço no
nosso modelo de exemplo:
No caso desse modelo conceitual, foi definido pelos responsáveis pelo projeto que essas
três características seriam suficientes para descrever um Professor. Claro que, no
mundo real, um professor tem muito mais características que somente seu CPF, Nome
e Endereço, mas a ideia aqui é representar somente o que irá fazer parte do banco de
dados.
54 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Tipos de atributos
Existem alguns tipos de atributos diferentes, que podem ser ou não diferenciados na
sua prova. É comum que as bancas utilizem notações (maneiras de representar os
modelos conceituais) que não façam diferenciação entre os diversos tipos de atributos,
geralmente com a exceção do atributo identificador/chave, que é o mais importante.
Vamos ver esses tipos a seguir:
No modelo ER, os atributos chave costumam ser representados pelo nome sublinhado
do atributo. Veja o atributo CPF da entidade Professor:
55 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Nesse cenário, então, teremos múltiplos atributos com seu nome sublinhado
associados à mesma entidade. Veja o exemplo da entidade Departamento, identificada
pela combinação dos atributos Nome e Código:
Para representar esse tipo de atributo, “puxamos” linhas a partir do atributo original
apontando para novos atributos, que representam as partes em que ele pode ser
dividido. Na prática, são somente essas partes que são armazenadas em um SGBD
relacional, por exemplo.
56 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Veja a seguir o exemplo do atributo composto Endereço, que pode ser dividido em
Logradouro, Número e CEP. Os atributos simples não têm nenhuma representação
gráfica específica.
Ø Mono- e multivalorados
57 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Ø Atributos derivados
Os atributos derivados são aqueles que podem ser calculados a partir do valor de outros
atributos. Por exemplo, veja que a idade de um aluno pode ser obtida através de sua
data de nascimento. É só fazer a subtração entre a data atual e o dia em que o aluno
nasceu.
Na prática, esses atributos não costumam ser armazenados no banco de dados para se
economizar espaço e evitar a presença de uma informação redundante no BD. O que se
faz é armazenar a fórmula utilizada para encontrar o valor do atributo, calculando-se o
resultado na hora de extrair os dados da tabela para consulta.
Ø Obrigatório x opcional
Essa restrição geralmente não aparece na modelagem conceitual, então vamos ser
breves. A ideia aqui é que alguns atributos precisam ter um valor informado. Esses são
os atributos obrigatórios. Nesse caso, todas as ocorrências da entidade devem ter um
valor correto atribuído a esse atributo. Por exemplo, podemos dizer que o atributo
Nome da entidade Aluno é obrigatório. Assim, não poderá existir um aluno sem nome
no banco de dados.
58 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
As bancas às vezes cobram uma outra classificação dos atributos que trata do propósito
de cada um. Essa divisão é mais “doutrinária”, digamos assim, e não está representada
explicitamente nos diagramas de entidade e relacionamento.
Ø Nominativos: são aos atributos que também são descritivos, mas adicionalmente
são capazes de nomear ou identificar as entidades representadas. Ex.: nome, código de
matrícula, CPF, etc.
59 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Entidades
Já vimos que as entidades do diagrama Entidade-Relacionamento são as “coisas” do
modelo, os objetos do mundo real que se deseja representar. Agora é interessante que
você saiba que, a exemplo dos atributos, existem diferentes tipos de entidades
existentes na modelagem conceitual.
Para fins de prova, a caracterização das entidades que mais aparece é aquela que as
divide entre fracas e fortes:
Entidades fortes:
Entidades fracas:
São o oposto das entidades fortes. Essas entidades dependem de uma outra para
existir, já que sozinhas não fazem sentido. Por exemplo, tome a entidade
Horário_Estudo do nosso modelo. Ela se refere a um conjunto de disciplinas que um
determinado aluno deve estudar diariamente. Se alguém colocasse as ocorrências
dessa entidade em um papel, teria uma lista no estilo “13:00 – Direito Constitucional;
14:00 – Direito Penal, 15:00 – Informática...”.
Agora pense comigo... faz sentido ter um horário de estudo sem um aluno associado?
Não, né? Um horário só serve a um aluno específico, pois cada um tem suas
particularidades e disponibilidades. Dessa maneira, a própria existência de um horário
de estudo só faz sentido se o horário estiver ligado a um aluno específico.
60 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Agora note que o atributo chave de Horário_Estudo é a hora, mas que esse atributo está
sublinhado de maneira tracejada:
61 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
A característica mais importante desse tipo de entidade é que uma entidade fraca não
pode ser identificada unicamente por seus próprios atributos. Para identificar
unicamente uma ocorrência de uma entidade fraca é necessário usar uma combinação
do atributo chave da entidade forte + a própria chave parcial da entidade fraca. No
nosso exemplo, essa combinação se daria pela chave do aluno (Matrícula) e a chave
parcial de Horário_Estudo (Hora).
Assim como essa chave da entidade fraca tem um nome diferente, o relacionamento
entre a entidade fraca e sua entidade forte associada também tem um nome especial:
ele é chamado de relacionamento identificador.
· Entidades fortes são a maioria das entidades e sua existência não depende de o
utras entidades
o A chave da entidade fraca é a associação entre seu atributo chave parcial e a ch
ave da entidade forte relacionada
62 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Relacionamentos
Os bancos de dados são conjuntos de dados relacionados. As interconexões entre as
entidades representadas no nosso modelo são chamadas de relacionamentos, que
serão o objeto do nosso estudo neste tópico. Você vai ver os diferentes tipos de
relacionamento existentes e suas características.
Grau
Os relacionamentos geralmente são binários (grau 2), mas também é possível constatar
com certa frequência relacionamentos unários (grau 1), que veremos mais à frente.
63 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Cardinalidade
64 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
· n:n – “muitos para muitos” (comumente chamado também de m:n, para difer
enciar as duas entidades envolvidas.
Vamos ver exemplos de cada tipo de cardinalidade existente para que você possa
entender como é que fazemos para “ler” os relacionamentos.
65 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Os relacionamentos 1:1 indicam que um membro de uma entidade só pode estar
relacionado a no máximo um membro de outra entidade e vice-versa. Por exemplo,
veja o relacionamento acima. Nele ocorre a seguinte situação:
66 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
e:
É importante que você resolva questões de prova para praticar esse entendimento, já
que questões que pedem a compreensão da cardinalidade desses relacionamentos 1:N
são comuns. Não é difícil, é só praticar!
67 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
· Uma disciplina pode ser estudada por múltiplos (N) alunos
Dica para a prova: Os exemplos trazidos em provas de concurso nem sempre seg
uem uma cardinalidade lógica ou que segue as regras do mundo real. Você sempr
e deve se ater exclusivamente às informações do enunciado e do modelo conceitu
al apresentado para responder ao item em questão, esqueça o cenário do mundo r
eal!
Por exemplo, se o modelo conceitual da prova mostra que a relação entre “delega
do de polícia” e “inquérito” é M:N, isso implica dizer que um inquérito pode ser con
duzido por múltiplos delegados. Nesse caso, você não vai chegar na sua prova e di
zer “mas peraí, na delegacia em que eu trabalho isso não é verdade, é só um dele
gado presidindo cada inquérito, então o item é falso!”.
68 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Participação
É isso que vamos responder agora, com o conceito de participação! A participação vai
definir se todas as ocorrências de uma entidade necessariamente precisam ou não
participar do relacionamento. Isso vai nos ajudar a definir a quantidade mínima de
ocorrências da entidade.
· Uma linha dupla representa a participação obrigatória, ou seja, todas as ocorr
ências da entidade em questão estão ligadas a pelo menos uma ocorrência da out
ra entidade. Isso implica dizer que a quantidade mínima de ocorrências dessa enti
dade é um.
69 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
De forma análoga, podemos ver que a participação de disciplina é total, pois há uma
linha dupla que liga a entidade ao relacionamento. Se a participação de disciplina é
total, toda disciplina é lecionada por pelo menos um professor.
Veja que pode ser pouco intuitivo ver que a quantidade mínima de disciplinas leci
onadas é dada pela participação de professor, não de disciplina; e que a quantida
de mínima de professores que lecionam uma disciplina é dada pela participação
de disciplina, não de professor.
Até parece que estamos lendo tudo invertido! Mas é assim mesmo, essa forma de
representação mais tradicional do modelo conceitual traz essa pequena dificuldad
e. Não é nada que você não seja capaz de resolver com um pouco de treino e revis
ão!
70 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Algumas particularidades de
relacionamentos
Seguindo com os conceitos apresentados até aqui, vamos detalhar um pouco mais
alguns aspectos pontuais dos relacionamentos que podem ser cobrados em prova.
Atributos em relacionamentos
Em primeiro lugar, é importante que você saiba que relacionamentos também podem
ter atributos associados. Veja o exemplo a seguir, bem relacionado à sua realidade de
concurseiro!
71 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Assim, vemos que essas duas características dizem respeito a uma participação de um
candidato em um concurso, ou seja, elas estão caracterizando o fato representado pelo
relacionamento, não as entidades isoladamente.
Autorrelacionamentos
72 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
supervisionado por um outro. Essa é uma relação de chefia convencional: cada servidor
tem somente um chefe imediato, que por sua vez pode chefiar vários outros servidores.
Veja que agora está muito mais claro que um servidor pode ser supervisor de vários
outros, mas só pode ser supervisionado por um outro servidor! Na prática, esses nomes
dos papéis muitas vezes não irão aparecer no modelo conceitual, mas é importante que
você tenha entendido o conceito.
73 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
· Autorrelacionamentos são aqueles de grau um, ou seja, que envolvem somen
te um conjunto de entidades.
74 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
75 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
E, por último:
76 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Moral da história: Veja que aqui não cabe dizer que “um médico só pode ter um
paciente” ou “um médico pode realizar múltiplos tratamentos”. A ideia de um
relacionamento ternário é que ele é a ligação entre as três entidades envolvidas.
Assim, só podemos tomar conclusões considerando o relacionamento como um todo!
77 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
b) Toda relação deve possuir somente uma chave primária de atributo único.
e) Uma entidade forte existe no banco de dados e possui atributos que a identificam
sem que ela precise estar associada a outra entidade identificadora.
RESOLUÇÃO:
a) Uma entidade fraca não pode ser identificada unicamente pelos seus próprios
atributos. Sua chave própria é conhecida como chave parcial. Veja que o atributo
existe, só não é capaz de identificar unicamente a entidade. É uma distinção sutil.
ERRADA
d) Faltou a terceira cardinalidade possível, m:n (ou n:n), que denota os relacionamentos
muitos para muitos. ERRADA
e) Uma entidade forte, ao contrário das entidades fracas, pode ser identificada
unicamente pelos seus próprios atributos. Essa é a nossa resposta! CERTA
Gabarito: E
78 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
RESOLUÇÃO:
Gabarito: E
79 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Notações
Agora que já entendemos os principais conceitos de modelagem conceitual,
precisamos falar um pouco a respeito das diferentes notações que temos para
representar o diagrama ER. Uma notação é um sistema gráfico de representação, ou
seja, é todo o conjunto de símbolos utilizados para criar os diagramas conceituais.
Essa notação que utilizamos até agora, com retângulos, elipses, losangos, linhas simples
e duplas, etc. é a notação mais tradicional, criada inicialmente por Peter Chen (o criador
do modelo ER) e utilizada amplamente no livro de Elmasri & Navathe. Essa notação é
bem comum em provas de todas as bancas, então sempra acho interessante começar
por ela!
No entanto, ao longo dos anos foram desenvolvidas várias outras notações para a
representação do diagrama ER, ou seja, esquemas gráficos que possuem o mesmo
significado, mas uma forma diferente de se apresentar cada um dos conceitos.
A banca muito provavelmente não vai perguntar a você algo como “que notação é essa
que está representada aqui? Qual é o nome dela? Quem foi que criou”, mas ela pode
sim utilizar essas diferentes formas de representar a modelagem conceitual nos seus
enunciados e exemplos, então você precisará saber encontrar e reconhecer informações
como cardinalidade e participação dos relacionamentos para resolver as questões.
Vamos ver juntos algumas notações mais conhecidas, principalmente no que se refere
a participação e cardinalidade.
80 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
(muitos).
Tendo isso em mente, veja que as duas representações a seguir são equivalentes. A
primeira na notação tradicional de Chen, a segunda utilizando a notação (min, max):
· Uma disciplina pode ser lecionada por no mínimo 1 e no máximo 1 professor
Veja que essa nova notação é bem mais fácil de compreender do que a anterior, que
por sua vez requer que você analise a participação de uma entidade para saber a
81 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
quantidade mínima da outra. A notação (min, max) agrupa essas quantidades mínima
e máxima junto de cada entidade, facilitando sobremaneira a nossa vida!
Vamos ver uma questão da banca CESPE para ver como esse tipo de notação pode ser
cobrada:
De acordo com a figura, não é necessário que uma licitação tenha uma modalidade.
RESOLUÇÃO:
Preste atenção, a questão é de banco de dados, não de direito administrativo! Veja que
a figura do diagrama conceitual está dizendo o seguinte: uma licitação possui pelo
menos uma modalidade, mas pode ter mais de uma. Enquanto isso, uma modalidade
pode ter zero ou mais licitações associadas. A modalidade, então, poderá existir no
sistema mesmo que não se cadastre nenhuma licitação associada a ela.
Gabarito: E
82 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Veja que os atributos estão representados por pequenos círculos com o nome ao l
ado, e não por elipses com o nome dentro, como é na representação mais tradicio
nal. Além disso, o atributo chave está representado pelo círculo preenchido, não pe
lo nome sublinhado. Essa é uma das várias maneiras com que os diagramas conce
ituais podem aparecer na sua prova, inclusive misturando elementos de múltiplas
notações.
Em geral, não acho que isso seja um problema ou que você, pois a informação que
mais varia e, por consequência, é mais difícil de se compreender é mesmo a cardin
alidade/participação, que estamos explicando direitinho aqui na aula.
83 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
1) Entidades:
São representadas por caixas nomeadas com os atributos listados em seu interior. O
atributo identificador (ou chave) costuma ser destacado com um asterisco (*) antes de
seu nome.
Daí que vem o nome “pé de galinha” ou de corvo, na tradução literal do nome em
inglês.
84 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Essa notação deve ser lida exatamente da mesma maneira com que lemos aquela
notação (min, max). As informações de quantidades mínimas e máxima ficam lado a
lado, colados com a entidade. Veja as equivalências entre as duas representações a
seguir.
85 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Suponha que um Auditor foi encarregado de modelar e criar um banco de dados para
um pequeno sistema de pedidos de produtos de informática. Para realizar essa tarefa,
desenvolveu o modelo mostrado na figura abaixo.
86 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
87 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
RESOLUÇÃO:
Gabarito: E
RESOLUÇÃO:
Vamos lá. Veja que ItemPedido está relacionado com Pedido. Em um dos lados do
relacionamento, temos um tracinho reto, em outro, temos um pé de galinha. Dessa
maneira, podemos dizer que a cardinalidade é realmente 1:n!
88 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Essa linha tracejada indica que não se trata de um relacionamento identificador. Assim,
um ItemPedido pode existir sem que esteja relacionado a um Produto.
89 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Voltando ao que foi pedido no item, veja que a assertiva está errada, já que diz que o
relacionamento acima é N:N. Como acabamos de ver, a cardinalidade do
relacionamento é 1:N e a participação de ambas as entidades é total.
Gabarito: E
90 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Entidades associativas
Na modelagem Entidade-relacionamento só podemos relacionar uma entidade com
outra entidade. Veja que os losangos (relacionamentos) do modelo estão sempre
conectando dois ou mais retângulos (entidades). Contudo, há casos em que precisamos
relacionar uma entidade com um relacionamento. Parece estranho, mas nesses casos
faz bastante sentido!
Assim, o mais adequado seria relacionar uma prescrição com uma consulta, mas isso
não é possível no diagrama ER, já que a consulta está representada na forma de um
relacionamento. Para atingir nosso objetivo, podemos transformar Consulta em uma
entidade associativa:
91 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
92 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Generalizações e especializações
O modelo ER não se manteve estático no tempo. Vários autores e pesquisadores da
área propuseram novas adições ao modelo para melhorar sua capacidade de
representar cenários presentes nos diferentes modelos de dados existentes. Os
conceitos de generalização e especialização fazem parte do que chamamos de modelo
ER Estendido (EER), uma dessas evoluções do modelo ER.
Nesse cenário, imagine que uma empresa de comércio eletrônico quer representar
dados dos seus clientes em um banco de dados. Cada cliente deve ser identificado por
um código e conter informações como nome e endereço para que possa ter seus
pedidos enviados.
O projetista do banco, então, propõe que seja adicionada a entidade Cliente no modelo
ER, da seguinte maneira:
93 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
no caso de pessoa jurídica, o CNPJ. Seria necessário ainda criar um campo Capital
Social para o caso de pessoas jurídicas, de modo a conceder um determinado benefício
para micro e pequenas empresas.
O projetista do banco de dados, muito experiente, nota que essa entidade irá conter
muitos valores em branco para seus atributos, pois nenhum cliente pessoa jurídica irá
ter CPF, e nenhum cliente pessoa física irá possuir CNPJ ou Capital Social. O funcionário,
então, sugere que se separe em duas entidades: pessoa física e pessoa jurídica.
O projetista também observa que também não seria uma boa ideia criar duas
entidades completamente distintas, pois todos (PFs e PJs) são clientes e têm
atributos em comum (Código, Nome e Endereço), que ficariam repetidos de forma
desnecessária nas duas entidades. Além disso, o campo código é um campo chave de
clientes como um todo, não devendo se repetir, e haveria dificuldades técnicas em se
certificar que um código de um cliente PJ não se repete na entidade PF e vice versa.
94 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Nesse cenário, cada pessoa jurídica e cada pessoa física também é um cliente. Por esse
motivo, há uma herança de atributos. Ou seja, as entidades Pessoa Jurídica e Pessoa
Física, além de seus próprios atributos, irão herdar os atributos de Cliente.
Assim, uma pessoa física terá os atributos de cliente (Código, Nome, Endereço), além
dos seus próprios atributos (CPF). A mesma coisa acontece com as pessoas jurídicas –
cada PJ terá os atributos de cliente (Código, Nome, Endereço), somados ao seus
próprios atributos (CNPJ e Capital Social).
Perceba, então, que um cliente PF só irá ter atributos pertinentes a si, não contendo
CNPJ e Capital Social. Da mesma maneira, não existirá previsão do cadastro de um CPF
para um cliente PJ.
95 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
É importante notar ainda que Pessoa Jurídica e Pessoa Física herdam também todos
os relacionamentos de Cliente, além de poder ter seus próprios relacionamentos
cada. É o mesmo fenômeno que ocorre com os atributos!
Em relação aos diagramas ER, veja que esse triângulo no modelo representa esse
processo de derivação de entidades com base em outras. No caso do exemplo, é uma
especialização. Na especialização, parte-se de uma entidade mais geral para criar
entidades mais específicas:
96 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
97 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Bancos de dados
Ø Banco de dados: Coleção de dados relacionados.
§ Definir;
§ Construir;
§ Modificar;
§ Compartilhar.
98 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
§ SGBD + BD
Ø Modelagem:
Ø Modelo Conceitual
Ø Modelo Lógico
Ø Modelo Físico
99 de 124 | www.direcaoconcursos.com.br
Prof. Victor Dalton
Tecnologia da Informação para Agente de Tecnologia do Banco ...
Aula 17: Conceitos de Banco de Dados
Modelo ER
Entidades
o Entidades fracas são aquelas que não possuem sentido próprio em existir, ou seja,
apresentam dependência em relação a uma entidade forte
relacionamento
Atributos
§ Atributos compostos são aqueles que podem ser divididos em múltiplas partes
§ Atributos compostos são aqueles que podem assumir múltiplos valores para uma
mesma ocorrência de entidade
§ São aqueles cujo valor pode ser obtido através do valor de outro atributo
Relacionamentos
§ 1:1
§ 1:N
§ 0 (parcial)
§ 1 (total)
Autorrelacionamento
Questões Comentadas
1 (FGV - MPE/AL - Técnico do Ministério Público - 2018)
Resolução:
Resolução:
Questão simples só para não deixar você esquecer! As transações devem seguir o
acrônimo ACID:
Atomicidade
Consistência
Isolamento
Durabilidade
Gabarito: E
B) projeto conceitual;
C) projeto lógico;
D) projeto físico;
E) projeto executivo;
Resolução:
Você pode ignorar a parte que trata de bancos de dados geográficos (SIG). A questão
cobra apenas o conhecimento de que etapa de modelagem produz o Modelo de
Entidade-Relacionamento (MER). Esse modelo é produzido na primeira etapa de
modelagem, a de modelo/projeto conceitual, em que são descritos, em alto nível, os
conceitos do ambiente de negócio que estarão representados no banco de dados.
Resposta letra B!
Considere uma transação de banco de dados que transfere uma quantia X de uma
conta A para outra, B. A transação consiste de uma leitura e gravação de A, seguida da
leitura e gravação de B. Admita que o programador construiu seu programa
corretamente.
Caso ocorra algum tipo de erro nas operações sobre B, interrompendo o curso normal
da transação, o sistema gerenciador do banco de dados deve agir para corrigir a situação
e garantir que as propriedades da transação sejam respeitadas.
A) atomicidade.
B) consistência.
C) durabilidade.
D) isolamento.
E) independência de dados
Resolução:
Veja que o item trata de apenas uma transação em que há uma interrupção devido a
um erro. A propriedade que trata desse tipo de situação é a atomicidade, que diz que o
SGBD deve agir para corrigir essa situação e não gravar nenhuma alteração realizada por
essa transação que falhou, já que ela não foi concluída corretamente. Com a
atomicidade é tudo ou nada, ou termina com sucesso todas as suas operações, ou não
produzirá efeitos no banco de dados.
Resposta, alternativa a)
Resolução:
A opção D diz que os dados são tratados somente como cadeias de caracteres (valores
textuais). Isso não está correto, pois nos bancos de dados há diversos tipos de dados,
como números inteiros e decimais, datas, valores booleanos (1 e 0/verdadeiro e falso) e
até dados binários, que podem armazenar arquivos inteiros.
Resposta, alternativa D.
RESOLUÇÃO:
Para resolver este exercício, não cabe “bom senso” ou “achismo” de como funciona esse
banco de dados: deve-se extrair somente as informações do enunciado.
Gabarito: A
RESOLUÇÃO:
Gabarito: C
RESOLUÇÃO:
Gabarito: B
RESOLUÇÃO:
Gabarito: C
RESOLUÇÃO:
Embora os SGBDs forneçam essas diferentes formas de acesso aos dados, incluindo
uma interface gráfica e a linguagem SQL, a redundância de dados não tem a ver com
isso. A redundância ocorre quando temos a mesma informação representada múltiplas
vezes em um mesmo repositório. Ela pode ser controlada ou não controlada, casos em
que será gerenciada pelo banco de dados ou pelo usuário, respectivamente.
Gabarito: E
RESOLUÇÃO:
Gabarito: C
RESOLUÇÃO:
Gabarito: C
RESOLUÇÃO:
Gabarito: E
a) valores.
b) atributos.
c) chaves primárias.
d) relacionamentos.
e) instâncias.
RESOLUÇÃO:
Gabarito: B
RESOLUÇÃO:
Nada disso! A durabilidade determina que os efeitos de uma transação serão persistidos
no banco de dados, mesmo que após sua conclusão ocorra alguma falha ou outro tipo
de problema com o sistema.
Gabarito: E
Questões Comentadas
1 (FGV - MPE/AL - Técnico do Ministério Público - 2018)
B) projeto conceitual;
C) projeto lógico;
D) projeto físico;
E) projeto executivo;
Considere uma transação de banco de dados que transfere uma quantia X de uma
conta A para outra, B. A transação consiste de uma leitura e gravação de A, seguida da
leitura e gravação de B. Admita que o programador construiu seu programa
corretamente.
Caso ocorra algum tipo de erro nas operações sobre B, interrompendo o curso normal
da transação, o sistema gerenciador do banco de dados deve agir para corrigir a situação
e garantir que as propriedades da transação sejam respeitadas.
A) atomicidade.
B) consistência.
C) durabilidade.
D) isolamento.
E) independência de dados
a) valores.
b) atributos.
c) chaves primárias.
d) relacionamentos.
e) instâncias.
Gabarito
1. E
2. E
3. B
4. A
5. D
6. A
7. C
8. B
9. C
10. E
11. C
12. C
13. E
14. B