Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Livro Eletrônico
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com
Videoaulas - Pós-Edital
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
 
 
 
 
 
 
 
 1 
160 
 
5. Modelagem de Dados. 5.4 Projeto e modelagem de banco de dados relacional. 5.2 
Normalização. 5.7 Índices e chaves primárias. .................................................................. 3 
Objetivos da Aula ................................................................................................................................ 3 
Conceitos básicos ............................................................................................................ 3 
O catálogo de dados Relacional ......................................................................................................... 9 
Tabelas .............................................................................................................................................. 10 
Visões ................................................................................................................................................ 15 
Índices ............................................................................................................................................... 16 
Chaves e Relacionamentos ............................................................................................................... 17 
Restrições de Integridade .............................................................................................. 22 
Mapa mental – Restrições de Integridade ....................................................................................... 25 
Regras de Codd .............................................................................................................. 26 
Mapa mental – Regras de Codd ....................................................................................................... 30 
Álgebra relacional.......................................................................................................... 31 
Seleção .............................................................................................................................................. 32 
Projeção ............................................................................................................................................ 34 
Rename (renomeação) ..................................................................................................................... 34 
União ................................................................................................................................................. 35 
Intersecção ........................................................................................................................................ 35 
Diferença ........................................................................................................................................... 36 
Produto Cartesiano ........................................................................................................................... 36 
Junção ............................................................................................................................................... 36 
Divisão ............................................................................................................................................... 38 
Tabela com o resumo das operações da Álgebra Relacional. ......................................................... 40 
Mapa Mental – Álgebra Relacional.................................................................................................. 41 
Objetivos da próxima Seção ........................................................................................... 42 
Normalização ................................................................................................................ 42 
Introdução ......................................................................................................................................... 42 
Conceitos Básicos .............................................................................................................................. 43 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 2 
160 
Dependência funcional ..................................................................................................................... 44 
Chave, superchave, chave primária e chave candidata ................................................................... 47 
Primeira forma normal (1FN) ........................................................................................................... 49 
Segunda forma normal (2FN) ........................................................................................................... 50 
Terceira forma normal (3FN) ............................................................................................................ 52 
Forma normal de Boyce-Codd (FNBC) .............................................................................................. 55 
Quarta e quinta formas normais .................................................................................... 57 
Quarta forma normal (4FN) ............................................................................................................. 58 
Quinta forma normal (5FN) .............................................................................................................. 60 
Mapeando o modelo ER em relacional ........................................................................... 62 
Passo 01 – Mapear as entidades regulares ..................................................................................... 62 
Passo 02 – Mapear as entidades fracas ........................................................................................... 63 
Passo 03 – Mapear os relacionamentos binários 1:1 ...................................................................... 63 
Passo 04 - Mapear os relacionamentos binários 1:N ...................................................................... 64 
Passo 05 - Mapear os relacionamentos binários N:N ...................................................................... 65 
Passo 06 – Mapear os atributos multivalorados ............................................................................. 65 
Passo 07 – Mapear os relacionamentos N-Ários (n>2) .................................................................... 66 
Passo 08 – Mapear Herança e Especialização ................................................................................. 67 
Questões Comentadas ................................................................................................... 70 
Questões Comentadas IADES ........................................................................................................... 70 
Exercícios IADES ................................................................................................................................ 84 
Gabarito ............................................................................................................................................ 92 
Questões Comentadas FCC ............................................................................................ 93 
Questões FCC sem comentário ....................................................................................................... 131 
Gabarito .......................................................................................................................................... 157 
Considerações Finais.................................................................................................... 159 
 
 
ThiagoRodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 3 
160 
5. MODELAGEM DE DADOS. 5.4 PROJETO E MODELAGEM DE BANCO DE 
DADOS RELACIONAL. 5.2 NORMALIZAÇÃO. 5.7 ÍNDICES E CHAVES 
PRIMÁRIAS. 
Fala galera! Muito bom dia, boa tarde ou boa noite! Vamos começar agora essa aula para 
conhecermos um pouco mais sobre banco de dados. Nosso objetivo é apresentar os conceitos mais 
importantes dos assuntos, sistematizar o conhecimento e garantir que você tenha condições de 
acertar qualquer questão deste tema que venha aparecer na sua prova. Ousado!? Um pouco, talvez. 
Mas confiamos no nosso trabalho e na sua capacidade de aprendizado. Vamos em frente! 
OBJETIVOS DA AULA 
• Conhecer a terminologia de banco de dados relacional. 
• Entender o significado das regras de integridade para bancos de dados relacionais. 
• Entender o impacto das linhas referenciadas na manutenção de bancos de dados relacionais. 
• Entender o significado de cada operador da álgebra relacional. 
CONCEITOS BÁSICOS 
Já sabemos que um banco de dados é uma coleção de dados persistentes que podem ser 
compartilhados e estar inter-relacionados. Ou seja, os dados são armazenados de modo 
permanente, como em um disco magnético. Ele também pode ter múltiplas aplicações e usuários, 
fazendo acesso aos dados armazenados. Tais dados são vistos como unidades separadas e podem 
ser ligados para fornecer um quadro completo. 
Os sistemas de banco de dados relacionais foram desenvolvidos originalmente por causa da 
familiaridade e simplicidade. Como as tabelas são utilizadas para comunicar ideias em vários 
campos do conhecimento, a terminologia de tabelas, linhas e colunas é facilmente compreendida 
por diferentes usuários. No modelo, tanto os dados quanto os relacionamentos são representados 
em tabelas ou relações. 
Além da familiaridade e simplicidade dos bancos de dados relacionais, há também uma sólida base 
matemática. A matemática dos bancos de dados relacionais implica a 
conceitualização de tabelas como conjuntos. O modelo tem uma base formal 
sólida, que está estruturada na teoria dos conjuntos e na lógica de primeira 
ordem. 
 A combinação de familiaridade e simplicidade com a base matemática é tão 
poderosa, que os SGBDs relacionais são líderes no mercado de armazenamento 
de dados operacionais. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 4 
160 
Edgar Frank Codd (o cara fumando um charuto cubano na figura ao lado) foi um matemático 
britânico que desenvolveu o modelo de banco de dados relacional quando era pesquisador da IBM 
em San José – Califórnia. É interessante que a IBM não quis implementar as ideias de Codd 
inicialmente. A empresa tinha uma linha produtos, em especial o IMS/DB, e não queria perder 
faturamento. O IMS/DB era um SGBD que não utilizava o modelo relacional como fundamento 
teórico. A IBM tinha um grande volume de receitas advindas deste produto. Assim, não queria 
perder espaço neste mercado, mesmo que fosse para ela mesma. Mas o que Codd propôs que seria 
tão revolucionário? 
Para responder a essa pergunta, vamos iniciar com uma definição informal do modelo. O modelo 
relacional é constantemente descrito como tendo os três aspectos a seguir: 
 
Aspecto estrutural: os dados no banco de dados são percebidos pelo usuário como 
tabelas, e nada além de tabelas. 
Aspecto de integridade: essas tabelas satisfazem a certas restrições de integridade ou 
limitações nos valores, que podem aparecer em cada registro. 
Aspecto manipulador: os operadores disponíveis para que o usuário possa manipular 
essas tabelas – por exemplo, para propósitos de busca de dados – são operadores que 
derivam tabelas a partir de outras tabelas. Desses operadores, três particularmente 
importantes são os operadores de restrição, projeção e junção. 
Ok! Vamos sair do texto puro e observar uma figura. Ela vai nos ajudar a entender esses conceitos 
de forma bem mais tranquila. Veja a figura abaixo: 
 
O modelo relacional é um modelo de dado representativo (ou de implementação). Como um 
modelo, ele procura abstrair e organizar os dados de um banco de dados. Para isso, o modelo 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 5 
160 
relacional define um conjunto de conceitos para representação dos dados. O elemento básico deste 
modelo está definido pelo conceito de relação. Um banco de dados seria, portanto, um conjunto de 
relações. Cada relação pode ser vista como uma tabela. Assim, os SGBDs relacionais devem 
representar os dados sob a forma de tabelas bidimensionais organizadas em linhas e colunas. 
Observe que os sistemas relacionais só exigem que o banco de dados seja percebido pelo usuário 
como tabelas. As tabelas são a estrutura lógica em um sistema relacional, não a estrutura física. No 
nível físico, os dados podem ser organizados em outros tipos de estrutura – usando arquivos 
sequenciais, indexação, hashing, cadeias de ponteiros, etc. – desde que ele possa mapear essa 
representação armazenada como tabelas no nível lógico. Isso é um reflexo da abstração provida 
pelo modelo relacional. 
O termo estrutura lógica pretende englobar os níveis conceitual e externo da arquitetura 
ANSI/SPARC. O detalhe é que os níveis conceitual e externo em um sistema relacional serão 
representados usando o modelo relacional. Os bancos de dados relacionais satisfazem a um princípio 
muito interessante, chamado Princípio da Informação: 
 
Todo o conteúdo de informação do banco de dados é representado de um e somente um modo, 
ou seja, como valores explícitos em posições de colunas em linhas de tabelas. 
Veja que os valores são armazenados em uma tabela. Não existe o 
conceito de ponteiros conectando uma tabela a outra. Mas o que 
seriam ponteiros? Tenho certeza que você fez essa pergunta 
mentalmente! Ponteiro é um tipo especial de dados que armazena um 
endereço de memória. Por exemplo, se um ponteiro p armazena o 
endereço de uma variável i, podemos dizer p aponta para i ou p é o 
endereço de i. Enfim, reforçando, no modelo relacional, não existe o 
conceito de ponteiros conectando uma tabela a outra. 
 
Ainda não está satisfeito com a explicação acima? Talvez ela seja, de fato, um pouco abstrata. Mas 
vamos olhar, mais uma vez, para uma imagem e tentar esclarecer, de uma vez por todas, essa 
característica. Olhe para o modelo abaixo e perceba que temos duas tabelas: empregado (EMP) e 
departamento (DEPTO). Perceba que a coluna DEPTO# da tabela EMP possui os valores dos 
departamentos. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 6 
160 
 
Sendo assim, existe uma conexão entre a linha D1 da tabela DEPTO e a linha E1 da tabela EMP. Essa 
conexão é representada pelo aparecimento do valor D1 na tabela EMP. Vamos agora resumir os 
conceitos que vimos até aqui. 
 
 
 
Agora que você está seguro dos conceitos básicos, vamos avançar na teoria do assunto. O C.J. Date 
trabalha com uma definição mais formal do termo relação. O próprio C.J. Date afirma que, nesse 
estágio do assunto, a definição não fará muito sentido. Mas o sarrafo1 do Estratégia sempre foi alto. 
 
1 Sarrafo é um militar para identificar um padrão mínimo aceitável. No salto com vara o sarrafo é aquele 
pedaço de madeira colocado na horizontal que deve ser ultrapassado pelo saltador. 
Thiago RodriguesCavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 7 
160 
E eu quero que você esteja afinado no assunto. Então, vou tentar, após apresentar a definição, 
descrever melhor cada um dos componentes presentes na definição, quais sejam: 
1. Uma coleção ilimitada de tipos escalares (incluindo em particular o tipo booleano ou 
valor verdade). 
2. Um gerador de tipo de relação e uma interpretação pretendida para esses tipos de 
relações gerados 
3. Recursos para definição de RelVars ou variáveis de relação desses tipos de relações 
gerados. 
4. Um operador de atribuição relacional para atribuição de valores de relações a essas 
RelVars. 
5. Uma coleção ilimitada de operadores relacionais genéricos (“a álgebra relacional”) 
para derivar valores de relações a partir de outros valores de relações. 
A coleção ilimitada de tipos escalares está associada aos tipos de dados que podem ser atribuídos 
a cada um dos atributos de uma tabela. Existem alguns tipos de dados básicos, como numérico, 
texto, data, hora e booleano. Os tipos de dados vão definir os valores possíveis de uma coluna da 
tabela ou relação. Mas existem mesmo tipos ilimitados? Sim! Porque os usuários podem definir seus 
próprios tipos de dados. 
Imagine que João queira definir um tipo de dado Nota, que restringe os valores possíveis de uma 
variável a números inteiros entre zero e dez. Veja que 10 é um dos valores possíveis para as variáveis 
associadas ao tipo Nota. Vamos tentar criar um exemplo simples para fixar esse conceito: 
 
Assim, o tipo define o domínio de uma variável. Cada número associado a uma variável, em 
determinado momento do tempo, é um valor. 
 
 
Agora que você já tem os tipos, você pode definir as relações. Um gerador de tipos de relações é 
um descritor que vai estabelecer os nomes e os tipos de cada coluna que serão geradas em uma 
tabela. Imagine que estamos definindo um modelo de tabela que pode ser construído. 
 
 
Numérico Texto Data 
Numérico: NumAluno Texto: Nome Data: DataAprovação 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 8 
160 
De posse dos tipos de relação, agora podemos definir uma variável de relação ou RelVar. Veja que 
uma RelVar é, basicamente, uma variável cujo valor é um conjunto de linhas em determinado 
momento. Todas as vezes que modificamos o conjunto de linhas de uma tabela, estamos alterando 
o valor da RelVar. Vamos supor agora que temos a RelVar ALUNO, descrita com três colunas e seus 
seguintes valores: 
NumAluno Nome DataAprovacao 
001 Lulu Concurseira 2019 
002 Breno Moreira 2019 
 
 
A variável de relação ALUNO apresenta um estado específico com duas linhas preenchidas. Esse é o 
valor da RelVar neste momento. Agora, volte na tabela e preencha com seu nome! Você vai mudar 
o valor de relação. Para fazer isso, você simplesmente escreveu seu nome na tabela acima. Contudo, 
o modelo relacional resolveu definir um operador de atribuição relacional. Ele é responsável por 
receber o valor novo de relação e atribuir à variável. 
ALUNO := ALUNO + (NOVA LINHA COM SEUS DADOS) 
Como em todas as atribuições, o que está acontecendo aqui em termos conceituais é que (a) a 
expressão no lado direito é avaliada e, em seguida, (b) o resultado dessa avaliação é atribuído à 
variável do lado esquerdo. Observe que “:=” é considerado um operador de atribuição, usado apenas 
para ilustrar o nosso exemplo. 
Por fim, falaremos sobre a coleção ilimitada de operadores relacionais, definida por Codd e 
comumente denominada de álgebra relacional. A álgebra relacional é uma coleção de operadores 
que tomam relações como seus operandos e retornam uma relação como seu resultado. Falaremos 
novamente sobre esse tópico mais à frente na nossa aula. Que tal fazermos uma questão sobre esse 
assunto? 
1. Ano: 2019 Banca: CESPE Órgão: SEFAZ-RS Prova: Auditor Assunto: Banco de dados 
No modelo relacional, variável corresponde a 
A um valor variável que não possui local no tempo nem no espaço. 
B uma matriz de valores codificados e armazenados na memória. 
C um recipiente para se armazenar um valor que pode ser atualizado. 
D um valor que não admite substituição. 
E uma constante individual. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 9 
160 
Comentário: Veja que essa questão foi totalmente inspirada no livro do CJ Date – Introdução a 
Sistemas de Banco de Dados, que também usamos na elaboração deste material. Veja o que 
diz o texto original do livro: 
“A primeira coisa que precisamos fazer é identificar a diferença lógica crucial e fundamental 
entre valores e variáveis (há uma confusão surpreendente sobre essa questão na literatura) ... 
adotamos as seguintes definições: 
Um valor é uma “constante individual” – por exemplo, a constante individual que é o inteiro 3. 
Um valor não possui local no tempo ou no espaço. Contudo, os valores podem ser 
representados na memória por meio de alguma codificação, e tais representações, ou (nosso 
termo preferido) aparições, possuem locais no tempo e no espaço. Na realidade, aparições 
distintas do mesmo valor podem existir em vários locais distintos no tempo e no espaço, 
significando, informalmente, que diversas variáveis diferentes podem ter o mesmo valor, ao 
mesmo tempo. Observe que, por definição, um valor não pode ser atualizado; se pudesse, 
então, depois dessa modificação, ele não seria mais o mesmo valor. 
Uma variável é um recipiente para um aparecimento de um valor. Uma variável possui um 
local no tempo e no espaço. Além disso, logicamente, as variáveis, diferente dos valores, 
podem ser atualizadas; ou seja, o valor atual da variável em questão pode ser substituído por 
outro valor, provavelmente, diferente do anterior. “ 
Assim, temos nossa resposta na alternativa C, ou seja, uma variável corresponde a um 
recipiente para se armazenar um valor que pode ser atualizado. 
Gabarito: C. 
O CATÁLOGO DE DADOS RELACIONAL 
O Sistema de Gerenciamento de Banco de Dados precisa fornecer uma função de catálogo ou 
dicionário. O catálogo é o lugar em que – dentre outras coisas – todos os diversos esquemas 
(externo, conceitual, interno) e todos os mapeamentos correspondentes (externo/conceitual, 
conceitual/interno) são mantidos. 
Em outras palavras, o catálogo contém informações detalhadas. Às vezes, elas são chamadas 
informações do descritor ou metadados, com objetos RelVars, índices, usuários, restrições de 
integridade, restrições de segurança, e assim por diante. 
As informações do descritor são essenciais para que o sistema faça seu trabalho de modo 
apropriado. Por exemplo, o otimizador utiliza informações do catálogo a respeito de índices e outras 
estruturas físicas de armazenamento, bem como muitas outras informações, para ajudá-lo a decidir 
como implementar as requisições do usuário. Da mesma forma, o subsistema de autorização utiliza 
informações do catálogo sobre usuários e restrições de segurança para conceder ou negar tais 
requisições. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 10 
160 
 
TABELAS 
Cada linha de uma tabela é conhecida como uma tupla, ou uma coleção de valores relacionados. 
Cada coluna é vista como um atributo, que possui um determinado conjunto de valores possíveis: o 
domínio. Um domínio é um conjunto de valores atômicos. A figura a seguir resume os conceitos 
vistos por meio da representaçãoda tabela Alunos. 
 
Percebam que a tabela é uma relação dentro do modelo de dados. Cada uma das colunas (Nome, 
Número e Turma) representa um atributo, que deve ser associado a cada uma das tuplas desta 
tabela. Cada linha descreve um aluno desta tabela. A primeira linha apresenta os dados de Francisco 
com seus respectivos número e turma. 
Outra constatação que podemos fazer, a partir da figura anterior, é a presença de um conjunto de 
valores possíveis para cada uma das colunas. Não está explícito. Não sabemos a definição formal da 
tabela. Contudo, podemos observar que as tuplas desta relação apresentam apenas valores 
M
et
ad
ad
o
s
Sinônimos: dicionário de 
dados ou catálogo de dados
Dados sobre os dados
Armazena informações 
sobre:
(Navathe)
Tipos de dados
Estruturas
Restrições (regras de ingridade)
Estarão armazenado ainda:
(Date)
Todos os vários esquemas e mapeamentos (externos, 
conceituais etc.)
Todas as diversas restrições de segurança e integridade
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 11 
160 
numéricos associados a coluna Número e caracteres associados a coluna Nome. É importante 
perceber que cada coluna possui um tipo de dados. 
 
Um tipo de dados define os valores que um dado pode assumir e as operações que podem ser 
efetuadas sobre o mesmo. Tipos podem ser, por exemplo: inteiros, reais, caracteres, etc. 
Quando especificamos um domínio, geralmente definimos um tipo de dado do qual são retirados os 
valores possíveis para o atributo. Além do tipo de dado, um domínio pode ser descrito por meio de 
um nome, um formato e outras informações adicionais a respeito dos dados. Apenas para 
exemplificar, um atributo salário pode ser definido como um decimal positivo com 10 dígitos e seu 
valor ser definido em reais (R$). 
Outra característica relevante associada ao domínio é o fato dele ser atômico. Isso faz parte da 
definição do modelo relacional. Não se esqueça disso! Outro ponto importante está relacionado à 
integridade dos dados. O modelo apresenta um conjunto de restrições básicas para dados e 
relacionamentos, conhecidas como restrições de integridade. 
Ok! Temos as nossas relações! Conseguimos definir, pelo menos de forma gráfica, um conjunto de 
tabelas com seus atributos. Se quisermos, podemos povoar ou inserir tuplas nessas tabelas com seus 
respectivos dados. Agora, se eu quiser associar ou analisar os dados de mais de uma tabela 
conjuntamente, ou ainda, fazer uma consulta que me retorne apenas as tuplas ou linhas com uma 
certa restrição, o que devo fazer? 
Os operadores relacionais são usados para manipular as informações pertencentes a cada uma das 
relações do nosso modelo. Esse conjunto de operações é conhecido como álgebra relacional. Ela vai 
nos ajudar a trabalhar com os dados em nossos esquemas relacionais. 
Você deve estar lembrado que o esquema é considerado o projeto do banco de dados, a forma de 
bolo sobre a qual nossas instâncias são armazenadas. Assim, imagine uma tabela aluno com 100 
alunos. O esquema vai definir os atributos necessários para cada linha da relação. Já as linhas são 
consideradas instâncias da tabela. Lembrando que as linhas podem ser denominadas tuplas da 
tabela. Que tal falarmos um pouco mais sobre elas? 
Uma tupla deve conter um conjunto de elementos. Cada elemento deve conter o nome do atributo, 
o nome do tipo e um valor. Por exemplo: 
TUPLA {NOME:CARACTER:THIAGO, CARGO:CARACTER:PROFESSOR} 
Veja que cada um dos elementos do conjunto acima, por exemplo, NOME:CARACTER:THIAGO, 
corresponde a um componente da tupla e é conhecido como tripla ordenada. A quantidade de 
componentes de uma tupla é conhecida como grau ou aridez da tupla. Neste caso, o grau da nossa 
tupla é igual a 2. 
Os dois primeiros valores, NOME:CARACTER, são vistos como um par ordenado e descrevem um 
atributo da tupla. Neste exemplo, THIAGO é o valor do atributo em questão. O conjunto completo 
de atributos é conhecido como cabeçalho, este vai determinar o tipo de uma tupla. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 12 
160 
As tuplas satisfazem a uma série de propriedades importantes, todas elas consequências imediatas 
das definições apresentadas até aqui: 
(a) Cada tupla contém exatamente um valor para cada um de seus atributos. 
(b) Não existe ordenação da esquerda para a direita nos componentes de uma tupla. Essa 
propriedade acontece porque uma tupla é definida por meio de um conjunto de componentes, e os 
conjuntos na matemática não possuem qualquer ordenação em seus elementos. 
(c) Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é um 
cabeçalho). Mais que isso, essa afirmação também é válida para um subconjunto vazio em 
particular! 
Esse último ponto merece uma explicação mais detalhada. Existe a tupla vazia (TUPLA { }). Às vezes, 
referimo-nos a uma tupla de grau zero mais explicitamente como uma “0-tupla”, a fim de enfatizar 
o fato de que ela não possui componentes. Outro nome conhecido é de tupla nulária. 
Antes de continuar, vamos resolver mais uma questão: 
2. Ano: 2019 Banca: TRC Órgão: Estratégia Assunto: Modelo Relacional - Tuplas 
Analise as afirmações abaixo: 
I. Cada tupla contém exatamente um valor (do tipo apropriado) para cada um de seus atributos. 
II. Existe ordenação da esquerda para a direita nos componentes de uma tupla, basta 
observarmos uma tabela desenhada em um papel para constar tal fato. 
III. Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é um 
cabeçalho). 
Quanto às propriedades das tuplas, é correto o que consta APENAS em 
A I., II. e III. 
B II. 
C III. 
D I e II. 
E I e III. 
Comentário: Acabamos de aprender sobre as propriedades de uma tupla. Perceba que as 
afirmações I e III são substratos das propriedades (a) e (c) descritas acima. Já a afirmação II 
mostra exatamente a minha preocupação com o seu entendimento de que uma relação não é 
exatamente uma tabela. A relação é um objeto formal, enquanto a tabela é um objeto informal 
que pode ser representada em uma folha de papel. Vejamos algumas das diferenças entre 
tabelas e relações: 
Característica Relação Tabela 
Nomes de tipo são omitidos nos 
cabeçalhos. 
Não 
Sim 
(normalmente) 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 13 
160 
Nomes de tipo e do atributo 
normalmente são omitidos no 
corpo. 
Não Sim 
Atributos/colunas possuem uma 
ordem da esquerda para a direita. 
Não Sim 
As tuplas/linhas possuem uma 
ordem de cima para baixo. 
Não Sim 
Pode conter tuplas/linhas 
duplicatas. 
Não Sim2 
Assim, podemos avaliar a segunda afirmação como falsa e achar nossa resposta na alternativa 
E. 
Gabarito: E 
Falamos das propriedades importantes das tuplas. Neste momento, vamos falar das propriedades 
importantes das relações. Dentro de qualquer relação, temos as seguintes propriedades: 
1. Cada tupla contém exatamente um valor (do tipo apropriado) para cada atributo. 
Trata-se da atomicidade dos atributos. 
2. Atributos não são ordenados da esquerda para a direita. Essa propriedade acontece, 
pois uma tupla é definida em termos de conjuntos matemáticos, que não possuem 
ordenação dos seus elementos. 
3. Tuplas não são ordenadas de cima para baixo. 
4. Não existem tuplas duplicadas. 
Buscando praticar os conceitos adquiridos até aqui, vamos fazer duas questões do CESPE sobre o 
assunto e mostrar que estamos alinhados com o conteúdo que vem sendo cobrado em concursos 
públicos. 
 
3. Ano: 2018Banca: CESPE Órgão: TCM-BA Cargo: Auditor de Contas Questão: 09 
Considerando os conceitos de banco de dados relacionais, assinale a opção correta a respeito 
das propriedades de uma tupla. 
A A tupla tem o mesmo significado e as mesmas propriedades de uma tabela. 
 
2 Neste caso, pense em uma tabela do Excel. Se estivermos falando de uma tabela no modelo relacional, 
ela não pode conter linhas duplicadas e todos os seus atributos devem ser atômicos. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 14 
160 
B Os componentes de uma tupla são ordenados da esquerda para a direita. 
C Cada tupla contém exatamente um valor para cada um de seus atributos. 
D Um subconjunto de uma tupla não é considerado uma tupla. 
E Uma tupla nunca é vazia, seu grau pode variar de 1 até n. 
Comentário: Vimos que as tuplas são linhas de uma tabela. Elas, quando consideramos a 
referência teórica e matemática do modelo relacional, não são ordenadas e não se repetem. 
Vamos agora analisar cada uma das alternativas acima: 
A) A tupla é a linha da tabela. Representa uma instância ou um valor armazenado. Pense na 
tabela aluno, cada aluno armazenado é uma tupla da tabela. Contudo, uma tabela pode ter 
atributos que não são específicos da tupla, como a quantidade máxima de registros. Logo, não 
podemos definir o todo pela parte, nem podemos dizer que a forma do bolo é um bolo. Sendo 
assim, a alternativa está incorreta. 
B) As tuplas não são ordenadas de cima para baixo, nem seus atributos ou componentes são 
ordenados da esquerda para a direita. 
C) Pela definição de modelo relacional do Codd, os atributos de uma relação devem ter valores 
atômicos. Logo, cada coluna deve ter um valor dentro do seu respectivo domínio. Este pode ou 
não aceitar valores nulos. Sendo assim, essa afirmação está certa. 
D) Um subconjunto de uma tupla é outra tupla. Inclusive, se lembrarmos da propriedade de 
fechamento das operações de álgebra relacional, podemos perceber que o resultado de uma 
projeção vai reduzir as tuplas de uma tabela aos atributos definidos na operação. 
E) Uma tupla de uma tabela pode ser vazia, ela é conhecida como empty tuple ou nullary tuple. 
Para preencher valores desconhecidos, usamos o valor nulo, que é uma notação para vazio. 
Além disso, ela representa um conjunto de atributos. A quantidade de atributos de uma tupla 
é denominada grau e pode variar de 0 até n. Logo, temos mais uma alternativa incorreta. 
Gabarito: C 
 
4. Ano: 2015 Banca: CESPE Órgão: STJ Prova: Analista Judiciário - Análise de Sistemas de 
Informação 
Acerca de modelagem relacional e pontos de função, julgue o item a seguir. 
O modelo relacional consiste em uma coleção ilimitada de tipos escalares e de um operador 
de atribuição relacional que atribui valores às variáveis de relações que integram os 
componentes desse modelo. 
Comentário: Vamos relembrar o que aprendemos na nossa aula. Apresentamos um conjunto 
de componentes definidos pelo Date para banco de dados relacionais. Segundo ele, o modelo 
relacional consiste em cinco componentes: 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 15 
160 
1) Uma coleção ilimitada de tipos escalares, incluindo em particular o tipo booleano ou valor 
verdade. (TIPOS DE DADOS) 
2) Um gerador de tipo de relação e uma interpretação pretendida para esses tipos de relações. 
(A EXISTÊNCIA DAS TABELAS) 
3) Recursos para definição de RelVars desses tipos de relações gerados. (DDL – DEFINIÇÃO – 
UMA LINGUAGEM PARA CONSTRUIR AS TABELAS) 
4) Um operador de atribuição relacional para atribuição de valores de relações a essas RelVars. 
(DML – MANIPULÇÃO/INSERSÃO DE VALORES NAS TABELAS) 
5) Uma coleção ilimitada de operadores relacionais genéricos para derivar valores de relações 
a partir de outros valores de relações. (OPERAÇÕES) 
Veja que os componentes com termos em negrito são justamente os usados na assertiva em 
questão. Logo, temos uma alternativa correta. 
Gabarito: C. 
VISÕES 
As views ou visões são objetos SQL que podemos criar dentro dos nossos bancos de dados. Uma 
VIEW é um comando SQL que é armazenado no banco de dados e possui um nome associada a ela. 
Podemos observar algumas funções básicas. A primeira é facilitar a visualização dos dados dispersos 
em diversas tabelas, tornando-os mais natural ou intuitivo ao entendimento humano. 
Outra função importante para a view está relacionada à segurança dos dados. É possível restringir o 
acesso aos campos e às colunas de uma tabela por meio de uma view. Desta forma, o usuário teria 
visão apenas a parte dos dados ou das informações. Esse grupo de informações deve ser compatível 
com as funções e as necessidades de acesso do usuário. 
Uma terceira opção para o uso de view é sumarizar dados de diferentes tabelas, gerando relatórios. 
Vejamos abaixo dois exemplos do uso de Views. Lembrando que ela pode ser criada sobre uma ou 
múltiplas tabelas. Observe que o comando, basicamente, inclui a sintaxe CREATE VIEW nome AS 
antes de uma consulta ao banco de dados. 
 
Este poderia também ser um INNER 
JOIN, usando: ON mc.contact_id = 
jd.contact_id 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 16 
160 
Para visualizarmos os dados de uma visão, basta escrevermos um comando SELECT sobre ela, vejam 
o exemplo sobre a view web_designers criada acima. 
 
A view é considerada uma tabela virtual, porque ela só existe durante o período que você 
está utilizando-a. Todas as operações que são feitas sobre a tabela podem ser feitas em uma 
VIEW, mas a tabela é virtual e, na teoria, não deve ser armazenada no banco de dados. 
Para finalizar, vamos comparar os conceitos de tabelas e visões de forma pragmática. A distinção 
entre uma tabela básica e uma visão é constantemente caracterizada desta maneira: 
Tabelas básicas “existem realmente”, no sentido de que representam dados de fato 
armazenados no banco de dados. 
As visões, ao contrário, não “existem realmente”, mas apenas oferecem diferentes modos 
de visualização dos “dados reais”. 
ÍNDICES 
O primeiro conceito que devemos ter em mente sobre o assunto é a definição de índices. Um índice 
é um mecanismo utilizado para melhorar a velocidade de acesso aos dados. Ele é composto por 
uma chave, que é um atributo ou um conjunto de atributos usado para procurar registros em um 
arquivo. Um índice também possui um ponteiro, que consiste em um identificador para um bloco 
de disco, além do deslocamento dentro do bloco para encontrar o registro. 
Um arquivo de índice consiste em um conjunto de registros com o formato apresentado na figura 
abaixo. A esse registro se dá o nome de registro de índice ou entrada de índice. 
 
Como uma técnica para criar estruturas de dados auxiliares, os índices agilizam a busca e a 
recuperação de registros. Para isso, eles envolvem armazenamento de dados auxiliares. Esses dados 
são armazenados nos arquivos de índices. Alguns tipos de acesso podem se beneficiar dos índices, 
por exemplo, a localização de registro com um valor especificado e a localização de registros em um 
intervalo especificado de valores. Veja a figura abaixo para entender um pouco mais sobre índices: 
Aqui está o nome 
da nossa view 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 17 
160 
 
É necessário saber se essebenefício, de fato, traz um ganho de desempenho ao sistema de banco 
de dados. Avaliar os índices para medir seus efeitos na performance é um passo importante. Vários 
SGBDs possuem utilitários que ajudam a quantificar os efeitos pretendidos com a criação de índices 
sobre tabelas. Esse valor é baseado em alguns fatores, entre eles, o tempo de acesso, inserção e 
deleção; o overhead de espaço em disco e os métodos de acesso suportados. 
Os índices podem ser classificados de acordo com a figura abaixo: 
 
CHAVES E RELACIONAMENTOS 
Superchave, chave, chave candidata, chave primária e chave estrangeira 
Vamos começar falando sobre chave. Existem alguns conceitos relacionados à chave. O primeiro 
deles é o de superchave. Trata-se de uma coluna ou uma combinação de colunas contendo valores 
únicos para cada linha. A combinação de todas as colunas em uma tabela sempre é uma superchave, 
porque as linhas de uma relação devem ser sempre únicas. 
Ín
d
ic
es
Único nível
Primário
São construídos no campo de ordenação 
física de um arquivo.
Precia ser construido sobre uma chave do 
arquivo (tabela)
De 
agrupamento
Utiliza campos não chave
Secundário.
São especificados em campos não ordenado 
como estruturas de acesso adicionais para 
melhorar o desempenho de consultas e 
transações.
Multinível
Implementados como B-
trees e B+ -trees
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 18 
160 
Uma definição formal afirma que uma superchave de um esquema de relação R = {A1, A2, ..., An} é 
um conjunto de atributos S C R (S está contido em R) que contenha a propriedade na qual não haverá 
duas tuplas t1 e t2, em qualquer estado válido da relação, cuja t1[S] = t2[S]. Em outras palavras, uma 
superchave é um conjunto de atributos que tem a característica de restringir o conjunto de tuplas 
de uma relação em apenas uma linha. 
Quando olhamos para um conjunto de atributos em uma tabela que não se repetem em nenhuma 
das linhas da tabela, podemos considerá-los uma superchave. 
Já entendemos o conceito de superchave. Uma superchave pode ser considerada apenas uma chave. 
Neste caso, a chave é defendida como uma superchave mínima ou irredutível (vou chama-la de K), 
onde qualquer remoção de atributo de K fará com que K deixe de ser superchave da relação. Se um 
esquema tiver mais de uma chave, cada uma delas é chamada de chave candidata. Entre as chaves 
candidatas, uma delas é escolhida para ser a chave da relação e é denominada chave primária. As 
demais são renegadas e são denominadas chaves secundárias ou alternativas. 
Segundo o Date, se K for um conjunto de atributos de uma variável de relação R, então K é uma 
chave candidata para R, se e somente se, ela possui ambas as propriedades. 
 
Unicidade: Nenhum valor válido de R contém duas tuplas diferentes com o mesmo valor para K. 
Irredutibilidade: Nenhum subconjunto apropriado de K tem a propriedade de unicidade. 
De posse deste conhecimento, é possível definir o conceito de atributo primário, que nada mais é 
do que um atributo membro (que faz parte) de alguma chave candidata da relação (R). Por sua vez, 
de forma bem intuitiva, um atributo não primário é todo aquele que não for um atributo primário! 
Vejamos, então, duas questões do CESPE sobre este assunto. 
5. Ano: 2019 Banca: CESPE Órgão: SEFAZ-RS Prova: Auditor Assunto: Banco de Dados 
No modelo relacional, a afirmação “Duas tuplas distintas, em qualquer estado da relação, não 
podem ter valores idênticos para os atributos na chave” é 
A uma propriedade de chave do modelo. 
B falsa. 
C uma restrição de domínio do modelo. 
D uma propriedade exclusiva do modelo objeto-relacional. 
E uma condição que deverá estar explícita na representação dos atributos de uma tupla. 
Comentário: As principais propriedades das chaves são unicidade e irredutibilidade. Vejamos 
as definições: 
Unicidade: Nenhum valor válido de relação contém duas tuplas diferentes com o mesmo valor 
para os atributos chave. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 19 
160 
Irredutibilidade: Nenhum subconjunto apropriado da chave tem a propriedade de unicidade. 
Veja que a questão trata de unicidade, logo uma propriedade de chave do modelo. 
Gabarito: A 
 
6. BANCA: CESPE ANO: 2015 ÓRGÃO: TJDFT PROVA: PROGRAMAÇÃO DE SISTEMAS 
Julgue os itens seguintes a respeito de banco de dados. 
[61] Em uma tabela de um banco de dados relacional, se uma restrição de chave primária for 
definida como composta de mais de uma coluna, os seus valores poderão ser duplicados em 
uma coluna; no entanto, cada combinação de valores de todas as colunas na definição da 
restrição de chave primária deve ser exclusiva. 
Comentário: Questão interessante, pois nos permite fazer um rápido comentário sobre chaves. 
Uma chave identifica unicamente uma linha de uma relação. Toda relação pode ter vários 
conjuntos de atributos que podem ser escolhidos como chaves primárias. Cada uma dessas 
opções que se caracterizam por ser uma superchave mínima, ou seja, não é possível retirar 
nenhum atributo sem que o conjunto perca a propriedade de ser chave da relação, é 
denominada chave candidata. A chave escolhida para ser a chave da relação é denominada 
chave primária. Ela pode ser composta por um ou mais atributos. 
A questão pede para analisarmos uma característica de chaves compostas por mais de um 
atributo. Percebam que a unicidade dos valores deve considerar o conjunto dos atributos e não 
um atributo individualmente. Sendo assim, a alternativa encontra-se correta. 
Gabarito: C. 
 
Nesta parte da aula, gostaria que você fixasse o conceito de chave primária e estrangeira. Esse é um 
conceito importante dentro do assunto de banco de dados. A chave primária vai ser usada pelo SGBD 
na organização dos arquivos de dados. Isso significa que o acesso aos dados pode ser feito de forma 
mais rápida, usando o conjunto de atributos definido como chave primária. 
O conjunto de atributos deve manter a propriedade de unicidade, ou seja, cada valor associado a 
uma chave primária só pode aparecer em uma linha da tabela. Olhe para a figura abaixo e me 
responda: quais campos podem ser usados como chave primária da tabela APROVADOS? 
APROVADOS 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 20 
160 
 
 
 
Se você pensou nos atributos Id_Aprovado, CPF e Passaporte, parabéns! Você pensou certo. 
Qualquer um destes campos pode ser usado como chave primária da tabela, por isso, eles são 
denominados chaves candidatas. No nosso exemplo, escolhemos o atributo Id_aprovado para ser 
usado como chave primária da relação Aprovados e o campo Id_Municipio para ser chave primária 
da relação MUNICIPIO. As outras chaves que foram preteridas podem ser denominadas chave 
alternativa. 
Agora, vamos falar sobre chave estrangeira. Observe que, na relação aprovados, temos um campo 
denominado Municipio. Esse campo vai “apontar” para a chave primária da tabela Municipio 
(Id_Municipio). O que acontece aqui é que os valores presentes na coluna Municipio da tabela 
aprovados devem estar presentes na chave da tabela município. Outra opção é que o valor seja 
definido como desconhecido (nulo). Qualquer outro valor que apareça na coluna Municipio fere a 
integridade referencial. Neste caso, é como se você estivesse se referindo a um município não 
cadastrado. Isso fere a integridade referencial que vimos anteriormente. 
A chave estrangeira é considerada uma coluna ou uma combinação de colunas em que os valores 
devemcorresponder aos valores de uma chave candidata. A chave estrangeira deve ter tipo de dado 
igual ao da chave candidata associada. As chaves estrangeiras são usadas no modelo relacional para 
construir relacionamentos entre as tabelas. 
É possível, ainda, um relacionamento em que a chave estrangeira aponta para a mesma tabela. 
Neste caso, temos um auto relacionamento. Os auto-relacionamentos representam associações 
entre membros do mesmo conjunto. Os auto-relacionamentos não são comuns, mas são 
importantes quando ocorrem. No banco de dados de uma universidade, um professor pode 
supervisionar outros professores e ser supervisionado por um professor. Veja o exemplo de um auto 
relacionamento na tabela abaixo: 
 
Auto-relacionamento 
Toda superchave 
com a propriedade 
de irredutibilidade. 
A chave candidata 
designada para 
identificar as linhas 
de uma tabela. 
Atributos de uma 
relação cujos valores 
devem corresponder 
a valores de alguma 
chave candidata de 
alguma relação. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 21 
160 
 
 
 
 
 
 
 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 22 
160 
RESTRIÇÕES DE INTEGRIDADE 
Nas partes anteriores desta aula, definimos a estrutura tabular presente no modelo relacional. Agora 
vamos falar das restrições de integridade. Essas restrições visam manter a consistência dos dados 
dentro do seu banco. As regras de integridade podem ser vistas como um conjunto de parâmetros 
ou regras do negócio, previamente estabelecidos e criados no banco de dados, aos quais os dados 
são submetidos. As regras servem para garantir que um processo de atualização não resulte em 
dados inconsistentes. 
As restrições de integridade resguardam o Banco de Dados contra danos acidentais, assegurando 
que mudanças feitas por usuários autorizados não resultem na perda de consistência de dados. 
Uma das características mais fortes dos bancos de dados relacionais, quando comparados com seus 
antecessores (em Rede e Hierárquico), está em oferecer mecanismos para a criação de regras de 
integridade diretamente no banco de dados. As regras de integridade de dados podem ser 
implementadas nos SGBDs de forma declarativa ou procedural. 
A integridade declarativa é implementada através de parâmetros opcionais da linguagem 
de definição de dados (DDL). Os tipos mais comuns de integridade declarativa são: chave 
primária (PK), domínio e integridade referencial. 
A integridade procedural se apresenta sob a forma de um programa, cuja lógica é escrita 
pelo programador, na linguagem procedural nativa do SGBD. Esse tipo de integridade 
supre as necessidades não cobertas pelos parâmetros de integridade declarativa e pode 
ser criada através de triggers (gatilhos), stored procedures (procedimentos armazenados) 
ou assertions (afirmações). 
Triggers, stored procedures e assertions são comandos que podem ser usados para fazer ajustes na 
base de dados. Um trigger, por exemplo, é uma estrutura conhecida como EVENTO-CONDIÇÃO-
AÇÃO. Imagine que uma modificação no banco de dados dispara um evento. Por exemplo, uma 
atualização na tabela funcionário com a inclusão de 10 novos servidores. 
Esse evento vai levar à execução de um código ou de um programa. O programa vai verificar 
(condição) se os servidores foram de fato aprovados no concurso público e, em seguida, incluir os 
dados dos mesmos na folha de pagamento e no plano de saúde do órgão em questão. Eis que 
descrevemos de forma abstrata a execução de um TRIGGER. As bancas focam suas questões sobre 
esse assunto nos seguintes tipos de restrições de integridade: 
Integridade de Domínio (dom(A)) – restringe os valores válidos que podem ser associados a um 
determinado atributo. É a mais elementar forma de restrição de integridade. Ajudam, não somente 
a garantir os valores inseridos no banco de dados, mas também a testar consultas para garantir que 
as comparações feitas fazem sentido. 
Você deve se lembrar que cada tipo de dado tem um conjunto de operações que pode ser executado 
sobre os mesmos. Imagine as operações de soma e subtração nos tipos de dados numéricos. Na 
linguagem SQL, é implementada pelo comando CHECK. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 23 
160 
Integridade de Chave (Unicidade) – Garante a unicidade do valor da chave primária em cada uma 
das tuplas de uma relação. Implementado pela palavra-chave UNIQUE. 
Integridade de Vazio (def if(x!=null?x==null)) – Basicamente verifica se um valor de um determinado 
atributo pode ou não ter o valor nulo associado a suas instâncias. Podemos definir uma coluna como 
NULL ou NOT NULL em SQL. 
Integridade de Entidade (PK != null) – Afirma que cada tabela deve ter uma chave primária e garante 
que a chave primária de uma entidade não receba o valor nulo. 
Integridade Referencial (FK == PK (Chave Candidata) || FK == null) - Garante que o valor que aparece 
em uma relação para um dado conjunto de atributos também apareça para um conjunto de 
atributos em outra relação. Em SQL, é implementada por meio de uma referência da chave 
estrangeira (FK) de uma relação à chave primária ou atributo UNIQUE da outra tabela. Esse valor de 
chave estrangeira, sempre que existir, deve estar associado a um valor da chave primária da outra 
relação. Caso contrário, pode assumir apenas o valor nulo. Veja a figura abaixo para entender melhor 
esse conceito: 
 
Observe que o uso de chaves estrangeiras vai permitir a criação de relacionamentos no modelo 
relacional. 
Integridade Semântica (assertions ou triggers) – Uma asserção é um predicado que expressa uma 
condição desejada a ser sempre satisfeita no banco de dados. Um gatilho (triggers) é um comando 
que é executado pelo sistema automaticamente, em consequência de uma modificação no banco 
de dados. Toda vez que um evento acontece, uma condição (caso exista) é verificada e uma ação é 
disparada. 
Ao lado da explicação de cada uma das regras de integridade, existe, entre parênteses, uma palavra, 
uma fórmula ou uma expressão. Elas não existem em nenhuma fonte oficial de estudos. São 
estruturas criadas por mim para facilitar a memorização das restrições de integridade. Quando 
estudamos a linguagem SQL, aprofundamos um pouco mais sobre esse assunto com uma visão mais 
prática dos conceitos apresentados. 
Antes de continuarmos a tratar do assunto, vamos fazer uma rápida questão. Essa é uma questão 
inédita, criada pela banca TRC para trabalhar pontos específicos do assunto. 
7. Ano: 2019 Banca: TRC Órgão: Estratégia Concursos Assunto: Restrições de integridade 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 24 
160 
Sobre as restrições de integridade presentes no modelo de dados relacional, analise as 
afirmações abaixo. Em seguida, assinale a alternativa que aponta a(s) correta(s). 
I. A restrição de integridade de entidade estabelece que nenhum valor de chave primária pode 
ser null. Isso porque o valor da chave primária é usado para identificar as tuplas individuais em 
uma relação. 
II. Todas as restrições de integridade deveriam ser especificadas no esquema do banco de 
dados relacional, caso queiramos impor essas restrições aos estados do banco de dados. 
III. Ter valores null para chave primária implica não podermos identificar alguma tupla. 
IV. A restrição de integridade referencialé classificada entre duas relações e é usada para 
manter a consistência entre as tuplas nas duas relações. 
a) I, II, III e IV. b) I, II e III, apenas c) I, III e IV, apenas 
d) II, III e IV, apenas e) Apenas I 
Comentário: A questão trata das restrições de integridade, que são utilizadas para garantir a 
consistência dos dados e a inviolabilidade em um banco de dados relacional. Podemos citar, 
como exemplos de restrição de integridade, a integridade de entidade, a integridade de vazio, 
a integridade de chave, a integridade referencial e a integridade semântica. Algumas dessas 
restrições são citadas nas alternativas. Vamos avaliar cada uma delas: 
Alternativa I - Restrição de entidade - define que nenhuma chave primária deve aceitar o 
valor nulo. Caso contrário, poderíamos ter várias tuplas com chave primária contendo o 
mesmo valor, ou seja, o valor nulo. Isto impediria que pudéssemos identificar essas tuplas de 
forma única. Alternativa correta. 
Alternativa II - As restrições de integridade devem ser implementadas no próprio banco de 
dados. Dessa forma, o SGDB pode, utilizando seus mecanismos internos, garantir, com 
eficiência, a consistência dos dados. Outros tipos de restrições, relacionadas às regras de 
negócio, serão implementadas na aplicação. Alternativa correta. 
Alternativa III – Lembre-se que nulo é um valor que não consegue identificar nada. Ele é usado 
para descrever que o valor da variável em questão é desconhecido ou inexistente. O atributo 
número do apartamento da relação endereço pode ser nulo quando se referir ao endereço de 
uma casa. Alternativa correta. 
Alternativa IV - A integridade referencial é o tipo de integridade que provê a consistência de 
dados relacionados entre duas ou mais tabelas. Especificamente, refere-se à chave estrangeira 
em uma tabela e à chave primária correspondente em outra tabela. Também se refere a quais 
ações o SGDB deverá executar nos dados associados às chaves estrangeiras quando ocorrerem 
mudanças (exclusão, alteração) na chave primária relacionada. Alternativa correta. 
Gabarito: A 
Para finalizar nosso conteúdo de restrições de integridade, brindaremos ao som de mais um mapa 
mental! 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 25 
160 
MAPA MENTAL – RESTRIÇÕES DE INTEGRIDADE 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 26 
160 
REGRAS DE CODD 
Para que um banco de dados seja considerado relacional, ele deve seguir as 13 regras definidas por 
E.F.Cood. Apresentamos abaixo as referências a cada uma das regras. É muito comum encontrar 
publicações falando das 12 regras. O que acontece é que são 13 regras, numeradas de 0 até 12. 
0. Todas as regras se baseiam na noção de que, para um banco de dados ser qualificado como 
relacional, ele dever utilizar recursos exclusivamente relacionais para seu gerenciamento. 
1. Informação: Todas as informações em um banco de dados são representadas de forma explícita 
no nível lógico e são estruturadas exatamente, em apenas uma forma, por valores em tabelas. Em 
outras palavras, todos os valores em bases de dados relacionais são representados em colunas e 
linhas de uma tabela. Veja um exemplo abaixo: 
 
OFF-TOPIC: Eu já sei que o Sport foi rebaixado no ano de 2018, não precisa ficar me lembrando ... 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 27 
160 
2. Acesso Garantido: Todos os dados precisam ser acessíveis. Cada valor 
atômico (datum), em um banco de dados relacional, possui a garantia de 
ser logicamente acessado pela combinação do nome de tabela, do valor da 
chave primária e do nome da coluna. Ou seja, os dados devem possuir 
identificadores únicos que permitam o acesso aos mesmos, evitando 
problemas de interpretação da informação. 
 
3. Tratamento sistemático de valores nulos: Valores nulos 
ou em branco devem ser suportados de forma sistemática, 
independentemente do tipo de dado, para representar 
informações inexistentes e informações inaplicáveis. É 
também implícito que tais representações devem ser 
manipuladas pelo SGBD de maneira sistemática. 
 
4. Catálogo on-line dinâmico: A descrição ou metadados do banco de dados é representada no nível 
lógico da mesma forma que os dados ordinários, permitindo que os usuários autorizados utilizem a 
mesma linguagem relacional aplicada aos dados regulares para terem acesso aos mesmos. É possível 
usar a linguagem SQL para conhecer as descrições das tabelas do banco, por exemplo. Veja a 
descrição de um conjunto de tabelas de um banco de dados na figura abaixo: 
 
5. Sublinguagem ampla dos dados: Um sistema relacional pode suportar várias linguagens e várias 
formas de recuperação de informações. Entretanto, deve haver pelo menos uma linguagem, com 
uma sintaxe bem definida e expressa por um conjunto de caracteres, que suporte de forma 
compreensiva todos os seguintes itens: 
• Sintaxe linear 
• Acesso de forma interativa e/ou por meio de programas 
• Operações de definição de dados, definição de "views", manipulação de dados 
(interativa e embutida em programas), restrições de integridade, 
autorizações/segurança de acesso. 
• Administração de transações (begin, commit e rollback). 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 28 
160 
6. Atualização de visualizações: Todas as "views" ou 
visões dos dados que são teoricamente atualizáveis 
devem também ser atualizáveis pelo sistema. 
Lembrem-se que as visões nem sempre podem ser 
atualizáveis, ou seja, uma alteração na visão nem 
sempre gera uma mudança de estado nas tabelas 
associadas. 
 
7. Inserção, atualização e exclusão de alto nível: A capacidade de manipular um conjunto de dados 
(em uma relação) através de um simples comando deve se estender às operações de inclusão, 
alteração ou exclusão de dados. 
 
8. Independência física de dados: Programas de aplicação e recursos ad hoc permanecem 
logicamente inalterados quando ocorrem mudanças no método de acesso ou na forma de 
armazenamento físico. Em outras palavras, quando for necessária alguma modificação na forma 
como os dados são armazenados fisicamente, nenhuma alteração deve ser necessária nas aplicações 
que fazem uso do banco de dados. Devem também permanecer inalterados os mecanismos de 
consulta e manipulação de dados utilizados pelos usuários finais. 
9. Independência lógica de dados: Mudanças nas relações e nas views provocam pouco ou nenhum 
impacto nas aplicações. Ou seja, as alterações nas tabelas que preservam os valores originais não 
devem afetar os aplicativos e recursos ad hoc. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 29 
160 
10. Independência de integridade: As aplicações não são afetadas quando ocorrem mudanças nas 
regras de restrições de integridade. Deve ser possível que todas as regras de integridade sejam 
definidas na linguagem relacional e armazenadas no catálogo de sistema, não no nível de aplicação. 
As várias formas de integridade do banco de dados (integridade de entidade, referencial, restrição 
e obrigatoriedade de valores, etc.) precisam ser estabelecidas dentro do catálogo do sistema ou 
dicionário de dados, e ser totalmente independenteda lógica dos aplicativos. 
11. Independência de distribuição: As aplicações não são logicamente afetadas quando ocorrem 
mudanças geográficas dos dados. Ou seja, os usuários finais não devem perceber o fato de o banco 
de dados ser distribuído ou local. Sistemas de banco de dados distribuídos (SBDD) podem estar 
espalhados em diversas plataformas, interligados em rede, e podem, inclusive, estar fisicamente 
distantes entre si. Essa capacidade de distribuição não pode afetar a funcionalidade do sistema e 
dos aplicativos que fazem uso do banco de dados. 
 
 
12. Não transposição das regras: Se um sistema possui uma 
linguagem de baixo nível, essa linguagem não pode ser 
usada para subverter as regras de integridades e as 
restrições definidas no nível mais alto. Ou seja, o sistema 
deve ser capaz de impedir que qualquer usuário ou 
programador passe por cima de todos os mecanismos de 
segurança, das regras de integridade do banco de dados e 
das restrições, utilizando algum recurso ou linguagem de 
baixo nível que eventualmente possam ser oferecidos pelo 
próprio sistema. 
Agora que você já entendeu as 12 regras de Codd aplicadas 
a banco de dados relacionais, vamos fazer uma rápida 
questão sobre o assunto. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 30 
160 
8. Ano: 2019 Banca: CESPE Órgão: SEFAZ-RS Prova: Auditor Assunto: Banco de Dados 
Uma das regras de Codd para o modelo relacional consiste 
A na dependência de dados físicos (mudança na memória e no método de acesso). 
B na independência de distribuição. 
C na presença de uma linguagem de programação no SGBD que promova interface com o banco 
de dados, com a segurança e com a atualização dos dados. 
D na subversão das regras de integridade ou restrições quando utilizada uma linguagem de 
baixo nível. 
E no não tratamento das atualizações de visões de dados. 
Comentário: A alternativa B refere-se à 11ª regra de Codd: 
Regra 11: Independência de Distribuição: A Distribuição de partes do SGBD em várias 
localidades deve ser transparente para os seus usuários. Aplicações existentes necessitam 
continuar operando com sucesso: 
• quando uma versão distribuída do SGBD é introduzida pela primeira vez, e 
• quando dados distribuídos existentes são redistribuídos em outras localidades físicas. 
Gabarito: B 
MAPA MENTAL – REGRAS DE CODD 
Vamos agora organizar as 12 regras de Codd em um mapa mental 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 31 
160 
ÁLGEBRA RELACIONAL 
Falaremos agora sobre a álgebra relacional, um assunto bastante explorado em concursos públicos. 
Esse tema possui algumas características matemáticas que são baseadas, principalmente, na teoria 
de conjuntos. O conjunto básico de operações utilizadas no modelo relacional é conhecido como 
álgebra relacional. Navathe apresenta três motivos para considerarmos essas operações 
importantes: 
• Fornece alicerce formal para o modelo relacional. 
• É usado como base para implementação e otimização de consultas. 
• Alguns dos seus conceitos são incorporados na linguagem SQL padrão. 
Historicamente, a álgebra e o cálculo relacional foram desenvolvidos antes da linguagem SQL. O 
conjunto básico de operações para o modelo relacional é a álgebra relacional. Essas operações 
permitem que um usuário especifique as solicitações de recuperação básicas como expressões da 
álgebra relacional. O resultado de uma recuperação ou uma consulta é uma nova relação. 
Embora a álgebra defina um conjunto de operações para o modelo relacional, o cálculo relacional 
oferece uma linguagem declarativa de nível mais alto para especificar consultas relacionais. A 
álgebra relacional, normalmente, é considerada uma parte do modelo de dados relacional. Suas 
operações podem ser divididas em dois grupos. Um grupo inclui conjunto de operações da teoria 
de conjuntos da matemática; e outro grupo, desenvolvidas especificamente para bancos de dados 
relacionais: as operações relacionais. 
Vamos apresentar cada uma das operações e, em seguida, apresentaremos as taxonomias ou formas 
de classificação das operações. Tenham em mente que todas as operações são executadas sobre 
uma ou duas tabelas e o retorno delas é sempre outra relação. Essa característica é conhecida como 
fechamento. Veja a figura abaixo: 
 
Veja que, na figura acima, fazemos uma consulta na relação Alunos, retornando a lista dos 
candidatos e suas notas, que denominamos de CandNota. Sobre a relação CandNota, faremos uma 
nova pesquisa para selecionar apenas os candidatos aprovados dentro das vagas. Perceba que o 
resultado dessas operações será sempre outra relação que pode ser usada como entrada para outra 
Consulta sobre a relação Alunos. Retorna a lista dos candidatos e suas notas. (CandNota) 
Consulta sobre CandNota retornando a lista dos candidatos aprovados 
(AprovadoVaga)
Consulta sobre AprovadoVaga para retornar a média das notas do aprovados.
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 32 
160 
operação. Isso é extremamente útil para o aninhamento de operações. Isso é reflexo da propriedade 
de fechamento. 
Então, você já sabe que o resultado de uma operação resulta em uma relação que serve como 
entrada para a operação encadeada. Agora, imagine que você tenha uma tabela com milhões de 
linhas de dados e um conjunto de operações encadeadas sobre essa tabela. O resultado da primeira 
operação gera outra relação de um milhão de linhas. Não faz muito sentido você ficar avaliando toda 
a relação para avaliar a próxima operação. Assim, temos duas formas básicas de avaliar um conjunto 
de operações particular: avaliação materializada e avaliação em pipeline. 
Avaliação Materializada - cada operação da álgebra é materializada em uma relação temporária (se 
necessário) e utilizada como entrada para a próxima operação. Essa é considerada a situação padrão 
no processamento de consultas. 
Avaliação em Pipeline - uma sequência de operações algébricas é executada em um único passo. 
Cada tupla gerada por uma operação é passada para a operação seguinte. Assim, cada tupla passa 
por um canal (pipe) de operações e somente o resultado ao final do pipeline é materializado (se 
necessário). Neste caso, evita-se a materialização de todos os resultados intermediários no 
processamento de uma consulta. 
 
Vamos seguir em frente e tratar agora das operações separadamente. 
SELEÇÃO 
O objetivo dessa operação, que recebe como entrada uma única tabela ou relação, é selecionar um 
conjunto de tuplas que satisfaçam um predicado (uma condição lógica) nos valores dos atributos. 
Em outras palavras, vamos extrair de uma relação um conjunto de linhas que possuem algumas 
Sejam R, S e T relações, considere 
as operações (R x S) ∩ T
Avaliação 
materizalizada
t1 <- R x S
t2 <- t1 ∩ T
Avaliação em pipeline
1. Algumas tuplas de R são avaliadas na 
operação (R x S)
2. O resultado obtido (t1) em 1 segue o 
fluxo e será operado com T.
3. Volta para o passo 1 e avalia as 
próximas linhas.
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 33 
160 
restrições. Por exemplo, funcionários que possuem salário maior que 10 mil reais. Vamos procurar 
entender melhor o que a operação faz exatamente com outro exemplo. Vejam a tabela abaixo: 
 
Queremos executar uma operação de seleçãosobre esta tabela. Vamos então fazer uma consulta 
de quais grupos de países ou parte do mundo apresentam mais de 10% da distribuição de petróleo. 
Olhando para a tabela, já poderíamos trazer os valores América Latina e Oriente Médio. Mas existe 
uma notação específica, definida pela álgebra relacional, para fazer essa consulta. Essa notação pode 
ser vista abaixo: 
 
A letra grega σ (sigma) representa a operação de seleção, que é feita sobre a relação R, restringindo 
as linhas de acordo com as restrições descritas pelo predicado. Sobre esse predicado, é preciso tecer 
alguns comentários. Primeiramente, é perfeitamente possível que ele seja uma composição de 
restrições sobre diferentes colunas da tabela. 
Cada restrição é conhecida como termo. Os termos podem ser ligados por conectivos ∧ (e), ∨ (ou), 
¬ (não). Cada termo pode ser composto por: 
<atributo> operador <atributo> ou <atributo> operador <constante> 
Ex: NomeCandidato = NomeAprovado || NomeAprovado = _____________ 
No exemplo acima preciso que você imagine que NomeCandidato e NomeAprovado são atributos 
de uma relação. Veja que seu nome é uma constante ou um valor. Por fim, a lista de operadores é 
formada por =, ≠, >, ≥, < ou ≤. Percebam que você pode compor diferentes predicados com essas 
estruturas. 
Vamos agora, que conhecemos a sintaxe e a consulta sugerida, escrever a mesma na notação 
correta. (Para facilitar nossa escrita, vamos chamar as colunas de REGIAO, 
DISTRIBUICAODEPETROLEO, DISTRIBICAODEGAS e a relação de PETROLEOREGIAO): 
σ<DISTRIBUICAODEPETROLEO >= 10>(PETROLEOREGIAO) 
Observe, na consulta acima, que o predicado < DISTRIBUICAODEPETROLEO >= 10> é definido sobre um atributo 
da tabela PETROLEOREGIAO. 
Preencha com 
seu nome. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 34 
160 
PROJEÇÃO 
Agora vamos passar para a projeção. Essa operação, também, recebe como entrada uma relação. 
Contudo, suas restrições são feitas sobre as colunas da tabela. Essa operação deixa algumas colunas 
de fora do resultado, reduzindo, portanto, a quantidade de dados a serem analisados. Usando o 
mesmo exemplo anterior, vamos supor que queremos as informações apenas da distribuição de 
petróleo no mundo e das regiões. Bastaria recortar a tabela excluindo a coluna que informa a 
distribuição de gás. 
Da mesma maneira que a operação anterior, apresentaremos agora a representação formal da 
projeção: 
 
A letra grega π (pi) representa a operação. A1, A2, ..., Ak são a lista de atributos da relação R que 
queremos trazer como resultado. Para fazermos a consulta utilizando a nomenclatura correta, 
podemos escrevê-la da seguinte forma: 
π< REGIAO, DISTRIBUICAODEPETROLEO >(PETROLEOREGIAO) 
Ainda sobre a essa operação, consideramos relevante saber que os resultados duplicados são 
removidos. 
RENAME (RENOMEAÇÃO) 
Para entender a definição da função rename, podemos começar entendendo a sua funcionalidade. 
A primeira seria unificar em um único conjunto duas listas diferentes. Imaginem duas tabelas: uma 
com a lista de escolas e outra, das universidades. Se quiséssemos juntar os nomes das instituições 
de ensino, poderíamos fazer uma união (falaremos sobre a operação nas próximas linhas) dos nomes 
das escolas com os nomes das universidades. Contudo, se precisarmos usar esse resultado mais 
adiante, qual o nome da nova relação e dos atributos? Temos, portanto, que renomear o resultset. 
O segundo uso do rename seria para reduzir ambiguidade em “selfjoin´s”. Quando fazemos um join 
da tabela com ela mesma e queremos comparar os atributos do resultado, precisamos renomear as 
tabelas para que essa comparação possa ser feita. Se você se lembrar de SQL, a linguagem 
implementa alias sobre as tabelas, e uma das funções desse alias3 é justamente resolver essa 
ambiguidade. Em suma, o alias é uma implementação do conceito de rename. 
A representação formal da operação de rename é feita da pela letra grega ρ (rho) e é aplicada sobre 
uma relação. Veja abaixo: 
 
3 Alias são usados para fornecer um nome temporário a uma tabela ou uma coluna em uma tabela. Os 
alias costumam ser usados para tornar os nomes das colunas mais legíveis e existem apenas para a 
duração da consulta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 35 
160 
ρx<A1, A2, ... ,An >(E) 
O x representa o novo nome dado para a relação (E) e A1, A2, ..., An representam os novos nomes 
dados para os atributos da relação. A1 se refere ao primeiro atributo da relação, A2 ao segundo e 
assim sucessivamente. Suponha uma relação STUDENT (NAME, PHONE). Podemos usar o comando 
de rename da seguinte forma: 
ρestudante<nome, telefone>(STUDENT) 
Você poderia, ainda, atribuir o resultado acima a outra relação, usando o comando de assignment 
(). Assim, poderíamos atribuir o resultado anterior a uma variável, por exemplo: 
temp  ρestudante<nome, telefone>(STUDENT) 
As próximas quatro operações são conhecidas como operações de conjuntos. Vamos analisar cada 
uma delas. 
UNIÃO 
A operação é caracterizada por R ∪ S, onde R e S são duas relações com a mesma quantidade de 
atributos, os quais operam sobre o mesmo domínio. O resultado contém as tuplas que estão em R, 
S ou ambas. Matematicamente, pode ser visto assim: 
 
INTERSECÇÃO 
A intersecção é representada por R ∩ S, traz como resultado a relação que contém as tuplas que 
estão em ambas R e S. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 36 
160 
DIFERENÇA 
R - S: Relação que contém as tuplas que estão em R e que não estão em S. Veja que, ao contrário das 
operações de união e intersecção listadas acima, a diferença não é comutativa, ou seja, 𝑅 − 𝑆 ≠ 𝑆 −
𝑅. 
 
PRODUTO CARTESIANO 
Permite combinar informações de duas relações, fazendo uma junção de todas as linhas, a primeira 
com todas as linhas da segunda. O produto cartesiano entre duas tabelas ou relações gera uma nova 
relação com a quantidade de tuplas igual ao produto da quantidade de tuplas de cada uma das 
relações. A nova relação possui todos os atributos que compõem cada uma das tabelas, fazendo 
parte da operação da seguinte forma: 
 
JUNÇÃO 
A junção é uma conexão entre duas tabelas na qual elas são mescladas de acordo com um campo 
em comum. Essa junção pode ser considerada um produto cartesiano seguido por uma seleção. O 
símbolo ⋈ representa uma junção. Ao executar uma junção, ela deve satisfazer a um predicado θ e 
deve existir pelo menos um campo nas duas tabelas que operem sobre o mesmo domínio. Esse 
campo é usado para decidir quais linhas da primeira tabela devem se relacionar com cada uma das 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 37 
160 
linhas da segunda tabela. Geralmente, exige-se que os valores dos atributos sejam iguais. Mas 
existem variações da junção conforme veremos abaixo. 
Theta-Join: O primeiro tipo de junção é definido sobre alguma comparação entre os atributos de 
junção. Essa comparação é conhecida como predicado. Caso esse predicado seja uma igualdade 
entre valores, essa junção é conhecida como Equijoin. Vejamos um exemplo: 
 
Natural join (⋈): Junção na qual θ é uma igualdade predefinida entre todos os atributos de mesmo 
nome presentes em duas relações R1 e R2 (atributos de junção). Estes atributos só aparecem uma 
vez no resultado.Junções externas ou outer joins. Junção na qual as tuplas de uma ou ambas as relações, que não 
são combinadas, mesmo assim são preservadas no resultado. Possui basicamente três variações. 
Logo em seguida, apresentamos um exemplo. 
Left outer Join: tuplas da relação à esquerda são preservadas. 
Notação: 
Right outer join: tuplas da relação à direita são preservadas 
Notação: 
Full outer join: tuplas da relação à direita e à esquerda são preservadas 
Notação: 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 38 
160 
Antijoin: Representada pelo seguinte símbolo: ⊳. A operação retorna os valores da relação que não 
satisfazem à condição de junção. Vejam o exemplo abaixo: 
 
DIVISÃO 
A operação de divisão é usada nas consultas nas quais se emprega a frase: “para todos”. Seu 
resultado será composto, basicamente, pelos elementos da primeira tabela que se relacionem com 
todos os elementos da segunda tabela. Vejam o exemplo abaixo: 
 
Sobre a taxonomia, é importante saber que temos um conjunto de operações conhecidas como 
fundamentais. São elas: seleção, projeção, união, diferença, produto cartesiano e rename. Essas 
operações possuem esse nome, pois a partir delas é possível obter o resultado das demais 
operações. 
Outra classificação importante é a classificação das operações em binárias e unárias (ou primárias). 
Esse parâmetro está baseado na quantidade de relações que são utilizadas nas operações. As 
operações de projeção, seleção e rename são unárias. As operações de união, interseção, subtração, 
produto cartesiano, junção e divisão são binárias. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 39 
160 
9. BANCA: FCC ANO: 2012 ÓRGÃO: TJ-RJ PROVA: ANALISTA JUDICIÁRIO - ANALISTA DE 
SISTEMAS 
Considere a seguinte tabela de um banco de dados. 
 TAB_FUNC = {COD_FUNC, NOME, COD_DEP, SAL} 
Uma expressão da álgebra relacional representando a tabela formada pelos códigos 
(COD_FUNC) e nomes (NOME) dos funcionários que ganham salário (SAL) entre 1000 e 3000 
reais e trabalham no departamento de código (COD_DEP) 3 é 
 
Comentário: Uma das opções para resolver essa questão é construir o código SQL da consulta: 
SELECT COD_FUNC, NOME FROM TAB_FUNC WHERE 
SAL >= 1000 AND SAL <= 3000 AND COD_DEP = 3; 
Agora vamos transformar essa consulta para a álgebra relacional. Vamos fazer uma projeção 
dos atributos COD_FUNC e NOME sobre o resultado de uma seleção com as restrições iguais 
às do select. Assim, temos como resultado: 
π<COD_FUN, NOME >( σ< SAL >= 1000 ^ SAL <= 3000 ^ COD_DEP = 3>(TAB_FUN)) 
Vejam que esse resultado está presente na alternativa A com algumas modificações na ordem 
das restrições impostas pelo comando de seleção. 
Gabarito: A. 
Ok! Vamos passar agora para o nosso tradicional mapa mental! Antes, porém, gostaria que você se 
lembrasse das 8 operações principais da álgebra relacional que foram definidas na primeira versão 
dos operadores. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 40 
160 
 
TABELA COM O RESUMO DAS OPERAÇÕES DA ÁLGEBRA RELACIONAL. 
 
Uma sugestão de tarefa é que você complete o mapa mental da página seguinte com a notação e 
palavras chave que ajudarão você a lembrar do significado de cada operação da álgebra relacional. 
 
• União , Interseção , Diferença e Produto cartesiano
• Todos eles um pouco modificados para levar em conta
o fato de que seus operandos são, especificamente,
relações e não conjuntos arbitrários.
Operadores de conjuntos tradicionais
• De restrição (também conhecido como seleção), 
projeção, junção e divisão.
Operadores relacionais especiais
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 41 
160 
MAPA MENTAL – ÁLGEBRA RELACIONAL 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 42 
160 
 
 
OBJETIVOS DA PRÓXIMA SEÇÃO 
Esta parte da aula descreve a normalização, uma técnica de eliminação da redundância indesejada 
em tabelas relacionais. Ao final desta aula, você deverá ter adquirido os seguintes conhecimentos e 
habilidades: 
• Identificar as anomalias de atualização nas tabelas com redundâncias excessivas. 
• Definir dependências funcionais entre colunas de uma tabela. 
• Normalizar tabelas, detectando violações das formas normais e aplicando as regras de 
normalização. 
Parece muita coisa, então vamos começa logo! 
NORMALIZAÇÃO 
INTRODUÇÃO 
Normalizar em sentido amplo significa voltar à ordem. Mas que ordem seria que precisa ser mantida 
quando executando um projeto de banco de dados? Um bom projeto de banco de dados garante ao 
usuário a possibilidade de modificar o conteúdo do banco de dados sem causar efeitos colaterais 
inesperados ou anomalias de atualização (ou modificação). Uma anomalia de modificação é um 
efeito colateral inesperado que ocorre quando se alteram os dados de uma tabela com redundâncias 
excessivas. 
Observe a tabela abaixo, perceba que estamos observando que o cliente Thiago está comprando 
alguns produtos para começar a estudar: 
 TABELA VENDAS 
Cod_Compra Nome Endereço CPF Produto 
1 Thiago SQSW 302 99999999 Caneta 
2 Thiago SQSW 302 99999999 Livro 
3 Thiago SQSW 302 99999999 Borracha 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 43 
160 
Perceba que os dados realçados em amarelo são repetidos ou redundantes em cada uma 
das linhas. Agora imagine que eu resolva atualizar o endereço de Thiago. Eu fui na 
primeira linha da tabela e alterei a informação conforma desejava. 
 TABELA VENDAS 
Cod_Compra Nome Endereço CPF Produto 
1 Thiago SQSW 304 99999999 Caneta 
2 Thiago SQSW 302 99999999 Livro 
3 Thiago SQSW 302 99999999 Borracha 
Agora, o cliente Thiago, associado ao CPF 999999999, possui 2 endereços diferentes. Veja 
que a causa para esse acontecimento foi justamente a redundância dos dados. Se o 
endereço de Thiago estivesse separado em outra relação essa anomalia não teria se 
formado. Vejamos como ficaria: 
TABELA VENDAS 
Cod_Compra CPF Produto 
1 99999999 Caneta 
2 99999999 Livro 
3 99999999 Borracha 
TABELA CLIENTE 
Nome Endereço CPF 
Thiago SQSW 304 99999999 
Agora temos um conjunto de tabelas que possuem apenas um registro para o endereço 
de Thiago. Desta forma, se atualizarmos a primeira linha da TABELA CLIENTE, não geramos 
uma anomalia de atualização e ainda por cima reduzimos a redundância dos dados. 
Show hein!? 😊 
CONCEITOS BÁSICOS 
O processo de normalização, como foi inicialmente proposto por Codd (1972), ele sujeita um 
esquema de relação a uma série de testes para certifica-se de que ele satisfaça certa forma normal. 
De uma forma mais simples, o processo observa o modelo de dados e faz algumas checagens, casos 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 44 
160 
as regras não sejam verificadas é necessário agir sobre o modelopara organizar melhor os dados. 
Vejamos uma definição forma de normalização: 
Definição: A normalização de dados é uma técnica de decomposição utilizada no projeto 
de banco de dados com objetivo de prover um armazenamento consistente, evitando 
redundância de dados e anomalias de atualização. 
Observe que a definição acima fala em decomposição. Desta forma, quando aplicamos a 
normalização sobre um conjunto de tabelas, é normal que surjam novas colunas ou relações para 
que os dados possam ser melhor distribuídos pelas tabelas. 
Inicialmente, Codd propôs três formas normais: 1ª, 2ª e 3ª. Todas baseadas nas dependências 
funcionais entre os atributos de uma relação. Uma nova forma normal foi proposta por Boyce-Codd, 
que é mais forte do que 3ª FN. Veja que estamos falando de um conceito novo, logo precisamos 
explicá-lo, vamos então aproveitar para apresentar outros conceitos que nos ajudam a entender 
melhor o assunto. 
Para entender as formas normais é preciso, antes de qualquer coisa, entender alguns conceitos. Para 
facilitar o seu entendimento vamos defini-lo e explicá-los em uma linguagem simples e objetiva. 
Vejamos... 
DEPENDÊNCIA FUNCIONAL 
A dependência funcional (DF) é uma restrição de duas ou mais colunas de uma tabela. 
Considerando X e Y colunas de uma tabela, podemos dizer que X determina Y (X →Y) se existe no 
máximo um valor de Y para cada valor de X. Por exemplo, o número do cadastro de pessoa física 
determina a cidade (CPFAluno → CidadeAluno) na tabela do banco de dados de uma universidade, 
se existir no máximo um valor de cidade para cada número do cadastro de pessoa física. Vejamos 
alguns valores: 
CPFAluno CidadeAluno Turma 
000000000000 Recife A 
111111111111 Brasília B 
222222222222 Fortaleza C 
333333333333 Ceilândia D 
444444444444 João Pessoa E 
Na DF CPFAluno → CidadeAluno, a coluna que aparece à esquerda de uma DF é denominada 
determinante, ou lado esquerdo (left-hand side = lado da mão esquerda). Nesse exemplo, CPFAluno 
é um determinante. Também é possível pensar nas dependências funcionais como identificadoras 
de potenciais chaves candidatas. Ao declarar que X → Y, se X e Y forem colocados juntos em uma 
tabela sem outras colunas, X é uma chave candidata. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 45 
160 
Todo determinante (lado esquerdo) é chave candidata se for colocado com outras colunas 
determinadas por ele. Por exemplo, se CPFAluno, CidadeAluno e Turma forem colocados juntos em 
uma tabela e CPFAluno → CidadeAluno e CPFAluno → Turma, então CPFAluno é uma chave 
candidata. Se não houver outras chaves candidatas, um determinante se tornará a chave primária 
se ele não permitir valores nulos. 
 
10. Analista de Políticas Públicas e Gestão Governamental - CGM Niterói - 2018 
A identificação das dependências funcionais constitui um importante passo para a 
normalização de tabelas de bancos de dados. Considere uma tabela T, com atributos A, B e C, 
onde A foi definido como primary key, e C como unique. 
Assinale a opção que indica o mínimo conjunto de dependências funcionais que devem existir, 
além das dependências triviais e das que podem ser derivadas, para que essa tabela esteja 
normalizada até a forma normal Boyce-Codd. 
a) A → B; A → C; B → C. 
b) A → B; B → C. 
c) C → A; C → B. 
d) A → B; A → C. 
e) A → B; A → C; B → A. 
Comentário: Essa questão pode ter sua resolução dividida em duas partes. Sabemos que temos 
três atributos: A, B e C. A foi definido como chave primária. Logo, pela explicação que vimos 
até aqui temos que A → B e A → C. 
A outra informação que temos é que o atributo C possui a propriedade de unicidade. Logo, 
podemos observar que C → A e C → B. Até aí tudo tranquilo. Temos que A e C são chaves 
candidatas pelo texto do enunciado. Um foi considerado chave primária o outro um atributo 
unique. 
Agora vamos relembrar da definição de FNBC: “todo determinante é chave candidata.” A e C 
já são determinantes e chaves candidatas. Nossa preocupação agora é com B. B precisar ser 
um determinante e uma chave candidata para não termos problema com a FNBC. Logo, temos 
que garantir que B → A. Com essa dependência, B passa a ser chave candidata pois determina 
a chave primária. Assim, nosso conjunto de dependência resolve nosso problema. 
Mas professor, e a alternativa A, por que ela não é a nossa resposta visto que B → C e C é chave 
candidata? Veja que nós sabemos que C é unique, mas isso não está expresso nas dependências 
funcionais da alternativa A. Logo, na letra A podemos visualizar uma dependência transitiva 
A→B e B → C, o que fere a terceira forma normal. Já na alternativa E esse problema está 
resolvido pois tanto A quanto B são chaves candidatas, então, mesmo que C não seja um 
atributo UNIQUE ele não vai gerar problemas com a FNBC. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 46 
160 
Logo, temos a nossa resposta na alternativa E. 
Gabarito: E 
Formalmente, uma dependência funcional, denotada por X → Y entre dois conjuntos de 
atributos X e Y, que são subconjunto de R, especifica uma restrição nas possíveis tuplas 
que formam um estado da relação r de R. A restrição é que, para quaisquer duas tuplas t1 
e t2 em r que tenha t1[X] = t2[X], elas também têm de ter t1[Y] = t2[Y]. 
Vamos olhara mais uma vez para a tabela do início da aula. Perceba que nas linhas o atributo nome 
possui o mesmo valor, logo, se Nome → Endereço, então a coluna endereço terá o mesmo valor 
para as respectivas linhas. Formalmente, temos que: 
t1[Nome] = t2[Nome] ➔ t1[Endereço] = t2[Endereço]. 
Cod_Compra Nome Endereço CPF Produto 
1 Thiago SQSW 302 99999999 Caneta 
2 Thiago SQSW 302 99999999 Livro 
3 Thiago SQSW 302 99999999 Borracha 
Mais uma vez: a questão aqui é perceber que se você escolher um determinado valor para o atributo 
X da relação (sabendo que X → Y) é possível saber o valor do atributo Y. Na definição formal é dito 
que se duas tuplas tiverem o mesmo valor para X, então elas também terão o mesmo valor de Y. É 
importante lembrar também que quando X → Y (X determina Y), X é chamando de determinante e 
Y de determinado. 
Uma dependência funcional pode ser considerada trivial, neste caso se X → Y e X contém (Ↄ) Y. Para 
entender isso basta supor um conjunto de atributos (A, B, C, D, E) e o fato de A, B, C → C faz desta 
DF uma dependência trivial. Por outro lado, temos a possibilidade da DF ser não trivial se X → Y e X 
não contém Y. Usando os mesmos atributos acima, uma DF A, B → D pode ser considerada um 
exemplo de DF não trivial. 
 
Relação
(A, B, C, D, E)
A, B, C → C
Dependência 
trivial.
A, B → D
D.F. não 
trivial
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 47 
160 
CHAVE, SUPERCHAVE, CHAVE PRIMÁRIA E CHAVE CANDIDATA 
Vamos aproveitar que estamos falando de chaves para relembrar seu conceito. Existem alguns 
conceitos relacionados a chave. O primeiro deles é o de superchave. Uma definição formal afirma 
que uma superchave de um esquema de relação R = {A1, A2, ..., An} é um conjunto de atributos S C R 
(S está contido em R) que contenha a propriedade na qual não haverá duas tuplas t1 e t2, em qualquer 
estado válido da relação r de R, cuja t1[S] = t2[S]. Em outras palavras, uma superchave é um conjunto 
de atributos que tem a característica de restringir o conjunto de tuplas de uma relação a apenas 
uma linha. 
Quando olhamos para um conjunto de atributos em uma tabela que não se repete em nenhuma das 
linhas da tabela podemos considerá-losuma superchave. Antes de continuar nosso estudo sobre 
chaves, vejamos uma questão de uma prova sobre o assunto. 
 
11. 2017 - Órgão: Hemocentro Cargo: Analista de Tecnologia da Informação Q. 34 
QUESTÃO 34 Considere uma tabela relacional “R” e seus atributos definidos por R (F1, F2, F3, 
F4, F5) com dependências funcionais F1, F2, F3 → F4, F5 e F5 → F1, F2. Com base nessas 
informações, assinale a alternativa que contém o número total de superchaves distintas para 
essa tabela. 
(A) 2 
(B) 7 
(C) 8 
(D) 10 
(E) 12 
Comentário: Para responder essa questão precisa que você entender dois conceitos. O 
primeiro está relacionado as chaves. Uma chave é qualquer superchave mínima. Ou seja, na 
chave se você excluir algum atributo da lista essa (lista) perde a propriedade de chave da tabela 
ou relação em questão. Assim, para resolvermos a questão precisamos pensar quais são as 
possíveis chaves desta relação. 
Logo de cara, por meio das dependências funcionais (DFs) definidas pela questão você percebe 
que F1, F2, F3 --> F4, F5, como a tabela só tem 5 atributos essa DF nos leva a primeira chave 
candidata da relação (F1, F2 e F3). 
Logo após temos mais uma informação sobre as dependências funcionais, que F5 --> F1, F2. 
Isso quer dizer que esse atributo (F5) pode identificar unicamente F1 e F2. Logo podemos 
compor uma nova chave candidata (F5 e F3). Veja que eu simplesmente substituí F1 e F2 por 
F5. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 48 
160 
OK! Agora que temos nosso ponto de partida, as duas chaves candidatas desta relação, a 
questão vira um problema de análise combinatória. Vamos construir todas a combinações 
possíveis, que utilizam uma das chaves candidatas e acrescentá-las a nossa lista de superchaves 
(F1, F2 e F3) e (F5 e F3). 
Vamos lá então: 
• (F1, F2, F3, F4, F5) --- superchave com 5 atributos 
• (F1, F2, F3, F4), (F1, F2, F3, F5), (F5, F3, F2, F4), (F5, F3, F1, F4) --- superchaves com 4 atributos 
• (F1, F2, F3), (F5, F3, F1), (F5, F3, F2), (F5, F3, F4) - superchaves com 3 atributos 
• (F5, F3) - superchave com 2 atributos 
Vejam que no total temos 10 possíveis superchaves para a relação em questão. Esse conjunto 
incluí as duas chaves candidatas que descobrimos anteriormente. As duas superchaves em 
negrito são chaves candidatas, as demais são apenas superchaves pois podem ter algum 
atributo removido do seu conjunto e continuar sendo superchave da relação. 
Gabarito: D. 
Já entendemos o conceito de superchave. Essa superchave pode ser considerada apenas uma chave. 
Neste caso, a chave é defendida como uma superchave mínima (vou chamar ela de K), onde 
qualquer remoção de atributo de K fará com que K deixe de ser superchave da relação. Se um 
esquema tiver mais de uma chave, cada uma delas é chamada de chave candidata. Entre as chaves 
candidatas uma delas é escolhida para ser a chave da relação e é denominada de chave primária. As 
demais são renegadas e são denominadas chaves secundárias. 
Entender o conceito de chave é o primeiro passo para o entendimento das formas normais. De posse 
deste conhecimento, é possível definir o conceito de atributo primário, que nada mais é do que um 
atributo membro (que faz parte) de alguma chave candidata da relação (R). Por sua vez, de forma 
bem intuitiva, um atributo não primário é todo aquele que não for um atributo primário! 
 
12. ANO: 2015 ÓRGÃO: TJDFT PROVA: PROGRAMAÇÃO DE SISTEMAS 
Julgue os itens seguintes a respeito de banco de dados. 
[61] Em uma tabela de um banco de dados relacional, se uma restrição de chave primária for 
definida como composta de mais de uma coluna, os seus valores poderão ser duplicados em 
uma coluna; no entanto, cada combinação de valores de todas as colunas na definição da 
restrição de chave primária deve ser exclusiva. 
Comentário: Questão interessante pois nos permite fazer um rápido comentário sobre chaves. 
Uma chave identifica unicamente uma linha de uma relação. Toda relação pode ter vários 
conjuntos de atributos que podem ser escolhidos como chave primária. Cada uma dessas 
opções que se caracterizam por ser uma superchave mínima, ou seja, não é possível retirar 
nenhum atributo sem que o conjunto perca a propriedade de ser chave da relação, é 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 49 
160 
denominada chave candidata. A chave escolhida para ser a chave da relação é denominada 
chave primária. Ela pode ser composta por um ou mais atributos. 
A questão pede para analisarmos uma característica de chaves compostas por mais de um 
atributo. Percebam que a unicidade dos valores deve considerar o conjunto dos atributos e não 
um atributo individualmente. Sendo assim a alternativa encontra-se correta. 
Gabarito: C. 
Com esses conceitos já é possível definir as três primeiras formas normais, bem como a forma 
normal de Boyce-Codd. 
PRIMEIRA FORMA NORMAL (1FN) 
Essa forma normal é considerada uma parte da definição de relação no modelo relacional básico. 
Sua definição prevê que todos os atributos de uma relação devem ter seus valores definidos sobre 
domínios atômicos ou indivisíveis. Em outras palavras, os campos de uma tabela não devem ser 
compostos ou multivalorados. Veja abaixo uma figura que demonstra a normalização de uma tabela 
que não está na 1FN para duas relações. 
Lembre-se que um atributo composto possui mais de valor de tipos diferentes associados a uma 
coluna da tabela. No nosso exemplo, vamos usar o atributo Endereço com valores de Rua, Número, 
Bairro e Cep. Já o atributo multivalorado pode ter 0, 1 ou vários valores associados ao mesmo tipo 
de dados. Neste caso, selecionamos o atributo telefone como exemplo. 
Código_Aluno Nome Telefones Endereço 
A001 Fabrício Ribeiro 
99564-9453 
98432-1234 
Rua 17 de Julho, 98, 
Morumbi, 12635-965 
B001 Carlos Normando 
Rua Águas de Março, 
16, Rio de Janeiro, 
54532-098 
C001 Emerson Pimentel 
92834-5697 
91283-4309 
Praça Ramos 15, 
Liberdade, 66858-633 
Você consegue perceber que temos dois atributos acima que não são atômicos. Claramente, 
podemos dividir os valores presentes nas colunas Telefones e Endereço. Vamos trabalhar cada um 
dos casos separadamente, começando pela coluna Telefones. Para acabar com os atributos 
multivalores precisamos criar uma outra tabela que vai associar cada um dos telefones ao seu 
respectivo aluno. Vejamos: 
 
 
 
Código_Aluno Telefone 
A001 99564-9453 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 50 
160 
A001 98432-1234 
C001 92834-5697 
C001 91283-4309 
Perceba que a chave da tabela acima é composta pelos atributos Código_Aluno e Telefone. 
Agora, precisamos voltar a nossa atenção para a relação original e separar os diversos atributos 
atômicos da coluna Endereço. 
Código_Aluno Nome Logradouro Número Bairro Cep 
A001 Fabrício Ribeiro Rua 17 de Julho 98 Morumbi 12635-965 
B001 Carlos Normando 
Rua Águas de 
Março 
16 Rio de Janeiro 54532-098 
C001 Emerson Pimentel Praça Ramos 15 Liberdade 66858-633 
Agora sim!! Temos uma tabela com todos os seus atributos associados a domínios indivisíveis ou 
atômicos. Veja que, para resolver o problema de atributos compostos, separamos os valores em 
várias colunas. Já, para resolver o problema de atributos multivalorados, criamos uma nova tabela 
com a chave da relação original e uma coluna atômica que representa os diversos/múltiplos valores 
em linhas distintas. 
Vamos aproveitar para expor algumas definições de diversos autores sobre a primeiraforma normal: 
Primeira forma normal 
• Uma relação R existe na primeira forma normal (1FN) se, e somente se, todos os 
domínios subjacentes contiverem apenas valores atômicos. 
• No modelo relacional, um domínio é atômico se os elementos do domínio são 
considerados unidades indivisíveis. Um esquema de relação R está na primeira forma 
normal se todos os atributos de R são atômicos. 
• A primeira forma normal afirma que o domínio de um atributo deve incluir apenas 
valores atômicos (simples e indivisíveis) e que o valor de qualquer atributo em uma 
tupla deve ser um único valor do domínio desse atributo. 
• A primeira forma normal evita as chamadas relações aninhadas, essas relações 
contêm vários atributos em uma única coluna e não são permitidas no modelo 
relacional. 
SEGUNDA FORMA NORMAL (2FN) 
A segunda forma norma visa resolver um problema de dependência parcial. Uma relação com uma 
chave primária (ou candidata) composta onde um dos atributos determina isoladamente outro 
atributo da relação. Vamos tentar dar um exemplo para fixarmos melhor os conceitos. Veja a tabela 
abaixo: 
Cod_Compra CPF Nome Endereço Produto 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 51 
160 
1 99999999 Thiago SQSW 302 Caneta 
2 99999999 Thiago SQSW 302 Livro 
3 88888888 Flávia SQSW 304 Borracha 
Na relação anterior, os atributos Cod_Compra e CPF formam a chave primária composta da tabela 
vendas. Contudo, é possível perceber que CPF, isoladamente, determina os atributos Nome e 
Endereço. Veja que, o exemplo que utilizamos anteriormente na nossa aula, possui problemas com 
a segunda forma normal. Essa dependência parcial precisa ser removida da relação. Para isso, o CPF 
se mantém como atributo na relação original e uma nova relação é criada para absolver os atributos 
por ele determinado. Assim temos: 
 
Cod_Compra CPF Produto 
1 99999999 Caneta 
2 99999999 Livro 
3 88888888 Borracha 
 
CPF Nome Endereço 
99999999 Thiago SQSW 302 
88888888 Flávia SQSW 304 
Agora temos duas relações com ausência de dependência funcional parcial. Logo, nosso modelo 
acima está na segunda forma normal. Lembrando que existe uma cumulatividade entre as formas. 
Assim, para estar na segunda forma normal, a relação tem que estar na 1FN e cumprir os requisitos 
para eliminar as dependências parciais. 
Uma definição mais rigorosa descreve que um esquema de relação R está na 2FN se todo atributo 
não primário A em R tem dependência funcional total de uma chave candidata. Podemos dizer 
também que não existe dependência parcial. De uma forma mais simples, a ideia aqui é que cada 
atributo não chave seja definido por todos os atributos pertencentes à chave primária ou a outra 
chave candidata da relação. Veja abaixo uma relação que não se adequa a segunda forma normal, 
sendo, por meio do processo de normalização, transformada em duas relações que estão de acordo 
com a definição apresentada. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 52 
160 
 
Um fato interessante sobre a segunda forma normal é que para termos problema com uma relação 
precisamos que uma chave candidata seja composta, ou seja, possuir mais de um atributo, e que 
um desses atributos determine outro (atributo não primário) desta relação. Nas provas de concursos 
o que geralmente acontece é termos uma chave primária composta e um atributo pertencente a 
essa chave que determina um atributo não primário da tabela. Desta forma, é possível aceitar 
algumas das definições abaixo: 
 
Segunda forma normal 
• Um esquema de relação R está na 2FN se cada atributo não primário A em R for total 
e funcionalmente dependente da chave primária de R. 
• Uma tabela está na segunda forma normal (2FN) se estiver na primeira forma normal 
(1FN), e seus atributos não chaves forem totalmente dependentes da chave primária. 
TERCEIRA FORMA NORMAL (3FN) 
A normalização feita a partir da regra definida pela terceira forma normal leva a relação para um 
estado específico. Neste caso, a relação tem que estar na segunda forma normal e ainda todo 
atributo não primário da relação não ser transitivamente dependente de uma chave da relação. 
Uma relação está na Terceira Forma Normal (3FN) se ela estiver na 2FN e nenhum atributo não chave 
(não primário) é transitivamente dependente de uma chave candidata. Enfim, na 3FN não se aceita 
dependência transitiva. O Navathe descreve uma definição mais geral da terceira forma normal que 
diz basicamente o seguinte: 
Um esquema de relação R está na terceira forma normal (3FN) sempre que uma 
dependência funcional não trivial X → A for determinada em R, qualquer 
(a) X é superchave de R; ou 
(b) A é atributo primário de R; 
Segundo o próprio autor, violar a condição (a) significa que X não é um super conjunto de nenhuma 
chave de R; consequentemente, X pode ser não primário ou pode ser um dado subconjunto de uma 
chave de R. O autor fala também que a violação de (b) significa que A é um atributo não primário. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 53 
160 
Enfim, são condições para a terceira forma normal (1) ter dependência funcional total para todas as 
chaves de R e (2) não ser transitivamente dependente de nenhuma chave de R. 
 
Se você achou essa definição de dependência transitiva muito complexa e não conseguiu fixar nada, 
deixa eu tentar explicar de outra forma. Primeiro você precisa ter em mente que para existir a 
transitividade temos que ter algumas premissas. Um atributo chave (primário), por exemplo, CPF 
determina um outro atributo (não primário), por exemplo, telefoneResidencial; que por sua vez 
determina outro atributo (não primário), por exemplo, Endereco. Vejamos a tabela abaixo: 
CPF Nome telResidencial Endereco 
001 Thiago 61 555-1255 SQSW 302 BL G 
002 Flavia 61 555-1255 SQSW 302 BL G 
003 Lucas 61 555-1533 SQSW 302 BL G 
004 Vinicius 61 555-1533 SQSW 302 BL G 
005 Ladjane 81 555-9299 Av. Portugal 
Pense da seguinte forma: se você me passar um número de CPF e eu devolvo um telefone 
residencial. Da mesma forma, se você me der um número de telefone eu devolvo um endereço 
único. Observe que, alguns telefones aparecem mais de uma vez na coluna, contudo, eles 
determinam o mesmo endereço, ou, em outras palavras, eles estão associados ao mesmo endereço. 
É justamente essa replicação que desejamos evitar na terceira forma normal. Vamos então separar 
a tabela acima: 
CPF Nome telResidencial 
001 Thiago 61 555-1255 
002 Flavia 61 555-1255 
003 Lucas 61 555-1533 
004 Vinicius 61 555-1533 
005 Ladjane 81 555-9299 
Veja que a redundância anterior desapareceu. Agora temos o telefone residência associado a apenas 
um endereço da tabela abaixo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 54 
160 
telResidencial Endereco 
61 555-1255 SQSW 302 BL G 
81 555-9299 Av. Portugal 
Agora, voltando aos conceitos mais formais, você deve lembrar que um atributo primário faz parte 
de alguma chave candidata da sua relação. E para que exista necessidade de normalizar utilizando a 
terceira forma normal temos que ter 3 atributos, vamos supor A, B e C, de forma que A seja primário 
e B e C não primários. Além disso, temos que ter uma dependência transitiva onde A → B e B→ C. 
Antes de apresentarmos as outras formas normais vamos fazer uma questão sobre os conceitos 
vistosaté aqui: 
 
13. Ano: 2017 Órgão: Alerj Cargo: Analista de Tecnologia da Informação Q. 48 
Em banco de dados, a finalidade do processo de normalização é evitar redundâncias e, 
portanto, evitar certas anomalias de atualização de dados. Considere as dependências 
funcionais entre os atributos das seguintes entidades: 
PACIENTE(ID_PACIENTE determina NOME_PACIENTE); 
MEDICO(ID_MEDICO determina CRM_MEDICO, NOME_MEDICO); 
CONSULTA(ID_PACIENTE, ID_MEDICO determinam DATA_ATEND, HORA_ATEND); 
Sabendo-se que o atributo sublinhado é a chave primária, a alternativa que apresenta as 
entidades e seus atributos na Terceira Forma Normal (3FN) é: 
(A) PACIENTE (ID_PACIENTE, NOME_PACIENTE, ID_MEDICO, DATA_ATEND, HORA_ATEND) 
MEDICO (ID_MEDICO, CRM_MEDICO, NOME_MEDICO) 
CONSULTA (CRM_MEDICO, DATA_ATEND, HORA_ATEND) 
(B) PACIENTE (ID_PACIENTE, NOME_PACIENTE) 
MEDICO (ID_MEDICO, CRM_MEDICO, NOME_MEDICO) 
CONSULTA (ID_PACIENTE, NOME_MEDICO, DATA_ATEND, HORA_ATEND) 
(C) PACIENTE (ID_PACIENTE, NOME_PACIENTE, ID_MEDICO) 
MEDICO (ID_MEDICO, CRM_MEDICO, NOME_MEDICO) 
CONSULTA (ID_PACIENTE, DATA_ATEND, HORA_ATEND) 
(D) PACIENTE (ID_PACIENTE, NOME_PACIENTE) 
MEDICO (ID_MEDICO, CRM_MEDICO, NOME_MEDICO) 
CONSULTA (ID_PACIENTE, ID_MEDICO, DATA_ATEND, HORA_ATEND) 
(E) PACIENTE (ID_PACIENTE, NOME_PACIENTE) 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 55 
160 
MEDICO (ID_MEDICO, CRM_MEDICO, NOME_MEDICO) 
CONSULTA (ID_PACIENTE, CRM_MEDICO, NOME_MEDICO, 
DATA_ATEND, HORA_ATEND) 
Comentário: Para chegarmos até a terceira forma normal temos que cumprir alguns requisitos. 
As relações do modelo não podem ter atributos compostos ou multivalorasdos (1FN), não pode 
existir em cada uma das relações dependência parcial (2FN) nem dependência transitiva (3FN). 
Ao ajustar o modelo podemos encontrar nossa resposta na alternativa D. 
Gabarito: D 
FORMA NORMAL DE BOYCE-CODD (FNBC) 
Uma coisa interessante é que a forma normal de Boyce-Codd foi proposta como uma forma mais 
simples que 3FN, porém mais rígida. Devido ao fato de a 3FN não tratar satisfatoriamente casos 
onde uma relação tem mais de uma chave candidata, e quando estas chaves são compostas e 
possuem atributos em comum. 
Se uma relação está na FNBC, também está na 3FN. Sua definição diz o seguinte: uma relação está 
na FNBC se todo determinante é chave candidata. Abaixo segue uma figura que demonstra uma 
normalização de uma relação para a FNBC. 
 
Veja na figura que temos duas chaves candidatas (Propriedade_num) e (Nome_cidade, Num_lote). 
Temos ainda uma dependência funcional onde Area determina o Nome_cidade. Neste caso, temos 
que fazer a separação proposta na figura acima. Veja que Area → Nome_cidade não fere a terceira 
forma normal pois Nome_cidade é um atributo primário. Vamos agora continuar nosso estudo 
fazendo mais uma questão sobre o assunto. 
 
14. BANCA: FCC ANO: 2015 ÓRGÃO: TRE-RR PROVA: ANALISTA JUDICIÁRIO - ANÁLISE DE 
SISTEMAS 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 56 
160 
Considere a entidade a seguir, retirada de um diagrama de entidade-relacionamento, que 
possui como chave primária os atributos employee_id e start_date. 
 
Pode-se afirmar que para esta entidade estar na Segunda Forma Normal (2FN), ela precisa estar 
na Primeira Forma Normal (1FN) e 
A os atributos employee_id, job_id e department_id precisam ser chave estrangeira nesta 
entidade. 
B a chave primária precisa ser formada pelos atributos employee_id, job_id e department_id, 
que são provenientes de tabelas relacionadas a esta. 
C o atributo employee_id, que é parte da chave primária, precisa ser proveniente de uma das 
tabelas relacionadas a esta. 
D os atributos end_date, job_id e department_id precisam ser dependentes da chave primária 
composta inteira, não apenas de parte dela. 
E todos os atributos precisam permitir apenas valores exclusivos, de forma que não haja 
redundância e, consequentemente, desperdício de espaço em disco. 
Comentário: Vejam que pelo diagrama sabemos que JOB_HISTORY se relaciona com outras 3 
entidades, possivelmente, EMPLOYEE, JOB e DEPARTMENT. Se lembrarmos da definição da 
segunda forma normal que diz para eliminarmos dependência parcial, podemos observar que 
a alternativa D está correta, pois é uma implicação da 2FN. 
Gabarito: D. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 57 
160 
QUARTA E QUINTA FORMAS NORMAIS 
As formas normais vistas até o momento são apoiadas em dependências funcionais (2FN, 3FN e 
BCNF) e podem ser consideradas para cada relação. Uma base de dados será considerada 
normalizada para uma dessas formas quanto todas as suas relações se apresentarem nessa forma. 
Tratamos das formas normais mais “simples” e relacionadas à DF, espero que você tenha entendido. 
Qualquer dúvida ou comentário pode ser enviado para mim aqui mesmo, no fórum do Estratégia 
Concursos ou por e-mail. Mas, o objetivo desta aula é: ensinar todas as formas normais. Precisamos, 
então, desmistificar a quarta e a quinta forma normal. Então, prepare sua mente, pois as próximas 
linhas deixarão todo assunto bem claro. Vem comigo! 
Primeira informação que devemos ter que faz parte da base do conhecimento das próximas formas 
normais é a ideia de decomposição sem perdas na junção. A decomposição deve ser feita de maneira 
que, quando se recompõe a relação original, apenas e exatamente as tuplas existentes na relação 
original são reobtidas. A decomposição baseada nas dependências funcionais (2FN, 3FN e FNBC) não 
causam perdas de junção, portanto a normalização para as formas normais baseadas em 
dependências funcionais está livre desse problema. 
Contudo, a normalização de relações através de dependências funcionais é apenas uma das 
maneiras, embora a mais importante, de evitar inconsistências em relações. Outra maneira advém 
de uma variação das dependências funcionais, chamadas dependência multivalorada (DMV), multi-
dependência funcional (MDF), ou ainda, dependência multivalor. 
E o que seria essa tal dependência multivalorada? A dependência multivalorada caracteriza o fato 
de que, embora um conjunto de atributos não possa determinar o valor de outro atributo, ainda 
assim, esse conjunto consegue restringir os valores possíveis para aquele atributo. 
Vamos a um exemplo simples. Uma pessoa pode ter vários números de telefones e um número de 
telefone pode ser compartilhado por várias pessoas. Nesse relacionamento N para M não é possível 
encontrar uma DF entre esses dois atributos, porém podemos visualizar o que chamamos de 
dependência multivalorada entre o Id_pessoa e Num_telefone que pode ser representada por 
Id_pessoa →→ Num_telefone. Diz-se que Id_pessoa multidetermina Num_telefone, ou, que 
Num_telefone é funcionalmente multidependete de Id_pessoa. 
Aqui cabe uma observação a respeito das DMV. Elas são consequência da 1FN que não permite que 
um atributo tenha um conjunto de valores. Veja um exemplo entre Funcionário, Projeto e 
Dependente. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 58 
160 
Veja que na tabela acima podemos encontrar duas DMV. Funcionário multidetermina Projeto e 
Funcionário multidetermina Dependente. 
Sempre que houver a ocorrência de um atributo multivalorado ocorrerá a multi-dependência 
funcional. Entretanto, se houver duas ou mais dependênciasmultivaloradas independentes entre 
si na mesma relação então pode ocorrer anomalias de atualização na relação. Tente inserir na tabela 
a informação que Thiago participará do projeto 03(proj 03). Para mantermos a DMV, teremos que 
adicionar 3 linhas, uma para cada dependente de Thiago, caso contrário ao procurarmos os 
dependentes dos funcionários que participam do projeto 03 retornaremos uma informação 
incorreta. 
Se tivermos um ou mais atributos multivalorados independentes na mesma relação, temos de 
repetir, gerando todas as combinações entre os atributos para manter a consistência entre as 
instancias. 
Observe a relação (Funcionario, Projeto e Dependente). Veja que, ainda que esteja na FBNC, a 
mesma ainda apresenta redundância. Observe também que a decomposição não pode se basear em 
DF, pois não existem DF na relação. É necessário, portanto, uma regra para o tratamento dessas 
situações, que possa ser usada para decompor a relação sem perdas. 
 Numa relação R {A, B, C} se existe uma DMV A →→ B também existe A →→ C (ou seja, A →→ R –
AB). Nestes casos, as DMV surgem sempre aos pares e representam-se por: A →→ B|C. Apenas 
reforçando, se A →→B|C, então a relação deve conter todas as combinações possíveis dos 
conjuntos de valores de B e de C, associados ao mesmo valor de A. 
Formalmente podemos pensar da seguinte forma: dada uma relação R com atributos A, B, C, existe 
uma dependência multivalorada do atributo A no atributo B (A →→ B) se, um valor de A é associado 
a uma coleção específica de valores de B, independente de quaisquer valores de C. 
QUARTA FORMA NORMAL (4FN) 
Começamos com uma definição informal: Uma relação está na 4FN se para qualquer DMV X →→ Y 
a relação não tem outros atributos além dos que fazem parte de X e de Y. Esse tipo de DMV é 
conhecido como trivial. 
Outra definição, desta vez, de acordo com o Navathe. "Um esquema de relação R está na 4FN com 
relação a um conjunto de dependências funcionais ou multivaloradas F se, para toda dependência 
multivalorada não trivial X→→Y em F+, X for uma superchave de R." 
Formalmente, o conjunto de todas as dependências de F, bem como todas as dependências que 
podem ser inferidas para F, é chamado de clausura de F, que é denotada por F+. 
A DMV pode ser classificada como trivial ou não trivial. Numa relação R, a DMV A →→ B é dita 
trivial se: 
 
(a) B for subconjunto de A ou 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 59 
160 
(b) A U B = R. 
Uma DMV que não satisfaz nem a (a) nem a (b) é dita não trivial. Em outras palavras, de uma maneira 
mais intuitiva, pode-se dizer que uma DMV não trivial ocorre sempre que houver mais do que um 
atributo multivalorado na mesma relação. Assim, o que se procura é a chamada DMV não trivial. 
Observe que as relações que contêm DMVs tendem a ser all-key (tudo é chave) – ou seja, sua chave 
é formada por todos os seus atributos tomados em conjunto. 
O processo de normalização de uma relação envolvendo DMVs não triviais, que não está na 4FN, 
consiste em decompô-la de modo que cada DMV seja representada por uma relação separada, onde 
se torna uma DMV trivial. Veja o nosso exemplo para a relação (Funcionario, Projeto, Dependente), 
que será decomposta em duas relações (Funcionario, Dependente) e (Funcionario, Projeto). 
 
Vimos que a propriedade sem perda na junção é uma das diversas propriedades para o projeto de 
banco de dados. De fato, essa propriedade é essencial: sem ela, há perdas de informação. Quando 
restringimos o conjunto de relações válidas entre as que satisfazem um conjunto de dependências 
funcionais e multivaloradas, podemos usar essas dependências para mostras que certas 
decomposições são decomposições sem perda na junção. 
A próxima e última forma normal tem relação direta com Dependência de Junção (DJ), por isso, ela 
também é conhecida como Forma Normal Projeção Junção. 
Quando é possível restringir um conjunto de relações válidas sobre um esquema R para aquelas 
relações para as quais uma dada decomposição é uma decomposição sem perdas, podemos definir 
essa restrição como uma dependência de junção. 
Em outras palavras, uma dependência de junção (DJ), denotada por DJ (R1, R2, ... , Rn), em um 
esquema de relação R, especifica uma restrição nos estados r de R. Essa restrição diz que todo estado 
legal r de R deveria ter uma decomposição de junção não aditiva para R1, R2, ... , Rn, ou seja, para 
todo r tenham 
*(πR1(r), πR2(r), ..., πRn(r)) = r (π é uma projeção sobre a relação R) 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 60 
160 
QUINTA FORMA NORMAL (5FN) 
A aplicação da 5FN consiste em encontrar a DJ * [R1, R2, … Rn] que permite decompor uma relação 
sem perdas. 
Advém das dependências multivaloradas que ocorrem entre os atributos de uma relação. A 
verificação da 5ª FN somente precisa ser empreendida em relações que tenham três ou mais 
atributos como parte da chave. 
A 5ª FN trata da situação em que a informação permite ser reconstruída a partir de componentes 
menores que possam ser mantidos com uma redundância menor. Ela generaliza os casos não 
cobertos pela segunda, terceira e quarta formas normais. 
Definição: Um esquema de relação R está na quinta forma normal (5ª FN) em relação a 
um conjunto F de dependências funcionais, multivaloradas e de junção se, para cada 
dependência de junção não trivial DJ (R1, R2, ... , Rn) de F+ (ou seja, implicada por F), todo 
Ri for uma superchave de R. 
Abaixo segue o exemplo da relação Fornece, que não pode ser decomposta em duas relações, pois 
a junção entre elas geraria tuplas espúrias. Assim, usamos a 5FN para decompor a relação em três 
(r1, r2, r3), de modo que uma junção feita sobre essa relação mantém a propriedade de junção sem 
perdas. 
 
15. BANCA: CESPE ANO: 2014 ÓRGÃO: TJ-SE PROVA: ANALISTA JUDICIÁRIO BANCO DE DADOS 
Julgue os seguintes itens, acerca de projetos, administração de usuários e acessos de bancos 
de dados relacionais. 
[1] Se uma variável de relação estiver na quinta forma normal, não será possível realizar 
nenhuma decomposição sem haver perda de informação. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 61 
160 
Comentário: Acabamos de explicar essa característica da 5FN que deve ser capaz de dividir a 
relação em um conjunto de outras relações de forma que a junção desse conjunto consiga 
reconstruir a relação original sem perdas ou tuplas espúrias. 
Gabarito E. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 62 
160 
MAPEANDO O MODELO ER EM RELACIONAL 
Quando estudamos os conceitos introdutórios de banco de dados sempre falamos do modelo 
conceitual entidade-relacionamento (ER) e do modelo lógico relacional. Explicamos que durante um 
projeto de banco de dados a evolução natural leva você a construir os dois modelos a partir dos 
requisitos do cliente. 
Legal! Então você começou pelo minimundo, juntou os requisitos e construiu seu modelo ER! Agora, 
se você tinha dificuldade de passar esse modelo para o modelo relacional, seus problemas 
acabaram! Nas próximas linhas vamos explicar o passo a passo da transformação do seu diagrama 
ER em tabelas. 
O livro do Navathe sugere um algoritmo que nos ajuda no processo de transformar um esquema ER 
e um esquema relacional. Vamos utilizar o esquema abaixo para ilustrar o passo-a-passo deste 
mapeamento.PASSO 01 – MAPEAR AS ENTIDADES REGULARES 
O mapeamento começa com as entidades regulares do modelo ER. Para casa tipo de entidade forte 
‘E’ presente no diagrama, criamos uma relação ‘R’ que incluí todos os atributos simples da entidade 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 63 
160 
E. Escolha os atributos chaves da entidade para ser chave primária da relação. Se a chave da entidade 
for composta, o mesmo conjunto de atributos que formam a chave de E vão fazer parte da chave 
primária de R. 
Vejamos no exemplo temos as entidades fortes EMPLOYEE, DEPARTAMENT e PROJECT serão 
transformados em relações. Os atributos SSN, DNUMBER e PNUMBER serão as chaves primárias das 
respectivas tabelas. Assim temos: 
 
PASSO 02 – MAPEAR AS ENTIDADES FRACAS 
A segunda etapa se concentra em mapear as entidades fracas. Para cada entidade fraca W no 
modelo ER com uma entidade pai ou proprietária E, você deve criar uma relação R e incluir todos os 
atributos simples (ou os componentes simples de atributos compostos) de W como atributos de R. 
É necessário ainda incluir como chave estrangeira os atributos que fazem parte da chave primária 
da entidade proprietária E. Assim a chave primária será formada pela combinação da chave primária 
da entidade pai mais a chave parcial da entidade fraca, caso exista. 
Vamos mais uma vez para o nosso diagrama ER. A entidade fraca DEPENDENT deve dar origem a 
uma relação. Essa relação terá os atributos da entidade, além da chave estrangeira que vem da 
entidade pai. Vejam, então, que o Ssn fará parte da relação. Desta forma podemos construir a 
relação dependente conforme descrito abaixo: 
 
PASSO 03 – MAPEAR OS RELACIONAMENTOS BINÁRIOS 1:1 
Vamos agora começar a mapear os relacionamentos binários 1:1 entre as entidades. Para cada 
relacionamento binário 1:1 R no esquema ER, identificamos as relações que correspondem as 
entidades S e T que participam do relacionamento R. A partir deste momento temos três ações 
possíveis. 
A primeira seria usar chave estrangeira para efetivar o relacionamento. Neste caso você escolhe uma 
das chaves primárias de S ou de T. Vamos supor que escolhemos a chave de S. Você vai usar a chave 
primária de S e incluir ela como chave estrangeira da relação T. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 64 
160 
A melhor opção é escolher a entidade que tenha participação total no relacionamento. Em outras 
palavras, você deve escolher a entidade que para cada instância existente da entidade ela tenha 
uma instância no relacionamento e incluir a chave primária da outra entidade nela. Vejam que neste 
caso evitamos o uso valores nulos. 
Um exemplo desta opção é colocar na relação DEPARTAMENT a chave do funcionário que gerencia 
(MANAGES) o departamento. Vejam que todo departamento deve ter um funcionário como gerente. 
Agora nossa tabela de DEPARTAMENT aparece com os novos atributos: o id do gerente e a data de 
início da gerência. 
 
A segunda opção seria fazer um merge ou fusão das relações. Vejam que se temos um 
relacionamento 1:1 podemos combinar os atributos das duas relações e do relacionamento em uma 
única relação. Essa opção é adequada quando a participação das duas entidades no relacionamento 
é total. 
A terceira opção seria por cross-reference ou criação de uma relação para o relacionamento. Essa 
alternativa basicamente cria uma nova relação com a chave primária das duas relações participantes 
para prover o relacionamento entre elas. Conhecida como tabela de ligação. 
PASSO 04 - MAPEAR OS RELACIONAMENTOS BINÁRIOS 1:N 
Neste momento vamos nos preocupar com os relacionamentos binários 1:N. Para cada 
relacionamento binário 1:N, vamos identificar a relação S que representa a participação da entidade 
no lado N do relacionamento. Em seguida, devemos incluir a chave estrangeira da relação T em S. 
Os atributos do relacionamento 1:N também devem aparecer na relação S. 
Vejamos um exemplo, os relacionamentos WORKS_FOR, CONTROLS e SUPERVISION no diagrama ER 
acima. Para WORKS_FOR vamos incluir o número do departamento como chave estrangeira na 
relação EMPLOYEE, vamos chamá-lo de DNO. 
Da mesma forma vamos incluir SUPER_SSN para implementar o relacionamento SUPERVION e o 
número do departamento na tabela de projeto para implementar o relacionamento CONTROLS. 
Vejam como ficaram as relações EMPLOYEE e PROJECT com essas mudanças. 
 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 65 
160 
PASSO 05 - MAPEAR OS RELACIONAMENTOS BINÁRIOS N:N 
O próximo mapeamento deve tomar conta dos relacionamentos M:N. Para cada relacionamento 
M:N criar uma nova relação para representar o relacionamento. Inclua como chaves estrangeiras da 
nova relação as chaves primárias das entidades participantes. Inclua ainda os atributos simples do 
relacionamento na nova tabela. 
Observe o relacionamento WORKS_ON no diagrama ER. Ele é mapeado pela criação da entidade 
WORKS_ON no esquema relacional. A chave primária é formada pelas chaves estrangeiras de projeto 
e empregado, renomeadas respectivamente para PNO e ESSN, respectivamente. O atributo HOURS 
é representado na relação. 
 
PASSO 06 – MAPEAR OS ATRIBUTOS MULTIVALORADOS 
Vamos agora fazer o mapeamento dos atributos multivalorados. Para cada atributo multivalorado 
A, crie uma tabela R. Essa relação R vai incluir qualquer atributo pertencente ao conjunto A, além da 
chave primária da entidade K que tem A como atributo multivalorado sendo chave estrangeira em 
R. A chave primária da relação é uma combinação de A e K. 
No nosso modelo temos o exemplo de DEPT_LOCATIONS que deve ser criado. O atributo DLOCATION 
representa um atributo multivalorado de departamento, que tem como chave primária DNUMBER. 
A relação DEPT_LOCATIONS fica com a seguinte configuração: 
 
Antes de passar para o passo 07, vamos apresentar o esquema relacional completo derivado do 
diagrama ER apresentado acima. As setas indicam a existência de uma chave estrangeira que garante 
a integridade referencial. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 66 
160 
 
Modelo relacional 
PASSO 07 – MAPEAR OS RELACIONAMENTOS N-ÁRIOS (N>2) 
A última etapa é o mapeamento de relacionamentos N-ários. Devemos criar uma nova relação que 
inclua as chaves primárias de todas as entidades participantes do relacionamento quanto n>2. 
Adicione também os atributos simples. Observe o diagrama abaixo o resultado do mapeamento do 
relacionamento SUPPLY em uma relação. 
Em alguns casos uma nova etapa é incluída. Quando? Quando usamos o conceito de herança e 
precisamos organizar os tipos e subtipos. 
 
Digrama ER de um relacionamento ternário 
 
Modelo relacional derivado de um relacionamento ternário. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 67 
160 
PASSO 08 – MAPEAR HERANÇA E ESPECIALIZAÇÃO 
Para o mapeamento de um modelo ER que possua especialização ou herança precisamos separar os 
atributos que fazem parte da entidade pai e os que são exclusivos de cada uma das entidades filhas. 
Vejamos um exemplo: 
 
Para simplificar podemos montar alguns modelos relacionais, a partir do modelo ER acima: 
Aluno (CPF, Nome,tipo_aluno) 
Aluno_Ensino_Medio(CPF, Série) 
Aluno_Graduação (CPF, Período) 
Aluno_Pós_Graduação (CPF, Tese) 
O atributo único tipo_aluno, inserido na relação Aluno, assume valores diferentes, de acordo com o 
tipo do aluno. Essa abordagem é muito flexível, principalmente para hierarquias com restrição de 
sobreposição. 
A outra abordagem sugere a criação apenas das entidades filhas. Essa situação é útil quando temos 
uma especialização total sem sobreposição. Neste caso, todas as instâncias de Aluno devem ser uma 
de um dos subtipos (Ensino médio, Graduação, Pós-Graduação). 
Aluno_Ensino_Medio(CPF, Nome, Série) 
Aluno_Graduação (CPF, Nome, Período) 
Aluno_Pós_Graduação (CPF, Nome, Tese) 
Outra forma de construir uma hierarquia de especialização/herança no modelo relacional é criar 
apenas uma tabela para representar todas as entidades, neste caso, o atributo único e identificador 
tipo_aluno volta a se fazer necessário. Vejamos: 
Aluno
Ensino 
Médio
Graduação
Pós-
Graduação
Série Período Tese 
Nome 
CPF 
Opção 01 
Opção 02 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 68 
160 
 
Aluno (CPF, Nome, tipo_aluno, Série, Período, Tese) 
 
Neste caso, o tipo aluno vai definir qual dos atributos subsequentes da relação apresentada acima 
será diferente de nulo. Representando, portanto, apenas uma das entidades filhas. Neste caso, não 
temos sobreposição. Um exemplo de instância seria: 
Aluno (007, Thiago, Pós-graduação, null, null, “Criptomoedas e os concursos públicos”) 
Uma última possibilidade e mapeamento seria usar uma relação para representar a entidade de 
nível superior e uma outra para representar todas as entidades de nível inferior. Vejamos como 
organizaríamos nosso exemplo neste caso. 
Aluno (CPF, Nome) 
 
Aluno_EM_GRAD_POS (CPF, tipo_aluno, Série, Período, Tese) 
Com isso terminamos o passo a passo para construção de uma modelo relacional a partir de um 
diagrama entidade relacionamento. Veja a seguir um resumo dos passos que devem ser seguidos. 
 
Etapas do Mapeamento de ER em relacional 
1. Mapeamento das entidades regulares 
2. Mapeamento das entidades fracas 
3. Mapeamento dos relacionamentos binários 1:1 
4. Mapeamento dos relacionamentos binários 1:N 
5. Mapeamento dos relacionamentos binários N:N 
6. Mapeamento dos atributos multivalorados 
7. Mapeamento dos N-ários (ternário, quaternário, ...) 
8. Mapeamento da herança e especialização 
 
Opção 03 
Opção 04 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 69 
160 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 70 
160 
QUESTÕES COMENTADAS 
QUESTÕES COMENTADAS IADES 
 
1. BANCA: IADES ANO: 2018 ÓRGÃO: CONSELHO FEDERAL DE MEDICINA 
- CFM PROVA: ANALISTA DE TECNOLOGIA DA INFORMAÇÃO 
[49] Por muitas vezes, é necessário representar dados em tabelas, que podem 
ser traduzidas por relações dentro de um banco de dados, como no exemplo a 
seguir. 
 
Com base no exposto e nos dados apresentados na tabela, é correto afirmar que 
(A) o uso de “Nome” como chave primária é uma boa prática. 
(B) a tabela em questão pode ser representada pelo seguinte esquema 
relacional: PESSOA(Nome: string, CPF: string, Idade: integer, Naturalidade: 
string). 
(C) “CPF” é uma chave primária e, por isso, é possível que possua valores iguais 
para diferentes da tabela. 
(D) o terceiro atributo da segunda tupla possui valor “123.456.789-01”. 
(E) a tabela representa uma relação de grau 3. 
Comentário: Sabemos que nome não seria uma boa opção para a chave 
primária pois podemos ter duas pessoas com o mesmo nome. Logo, a alternativa 
A está errada. 
Já a alternativa B descreve de forma correta um esquema relacional, nele temos 
a descrição das colunas com seus respectivos tipos de dados. Sendo assim, essa 
é a nossa resposta. 
CPF é um valor que não pode ser repetido, ou seja, duas pessoas não podem ter 
o mesmo CPF. Assim, temos um erro na letra C. 
O terceiro atributo de cada uma das tuplas é a Idade. Desta forma, o valor dele 
para a segunda tupla é 57. 
A tabela apresenta grau 4, lembrando que o grau da relação é a quantidade de 
atributos que fazem parte dela. 
Gabarito: B 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 71 
160 
 
2. BANCA: IADES ANO: 2018 ÓRGÃO: CONSELHO FEDERAL DE MEDICINA 
- CFM PROVA: ANALISTA DE TECNOLOGIA DA INFORMAÇÃO 
[34] Assim como a maioria das tecnologias, os bancos de dados existem em 
diferentes arquiteturas em diferentes aplicações. Acerca das vantagens e 
desvantagens dos bancos de dados relacionais, assinale a alternativa correta. 
(A) O MySQL é um sistema de gerenciamento de banco de dados (SGBD) 
relacional rápido, confiável e escalável. Entretanto, é mais conhecido por não ser 
um banco SQL de código aberto. 
(B) Uma das desvantagens dos bancos de dados relacionais é que eles não 
trabalham com dados estruturados. 
(C) Os bancos relacionais realizam a normalização dos dados, o que resulta em 
perda de velocidade. 
(D) A forte tipagem dos bancos relacionais é suficiente para garantir a 
integridade e a consistência dos dados. 
(E) O MySQL é um dos sistemas de mais baixa qualidade, por se tratar de um 
sistema de código aberto; isso, é pouco utilizado no mercado. 
Comentário: Vamos analisar as alternativas acima. Primeiramente, sabemos 
que o MySQL é um SGBD de código aberto. Logo, a letra A está errada. Outro 
ponto é que possui dados estruturados é uma das características dos bancos de 
dados relacionais, as linhas, colunas e domínio dos dados que são definidos a 
priori nos sinalizam tal fato. Sendo assim a alternativa B também está incorreta. 
A normalização vai reduzir a redundância do sistema e as anomalias de 
atualização, contudo ela vai nos levar a necessidade de fazermos junção entre 
tabelas para consultarmos os dados em conjunto. Isso pode implicar em perda 
de velocidade. Acho que a alternativa extrapolou um pouco generalizando tal 
fato, mas essa é a nossa resposta. 
Para garantir a integridade dos dados usamos as restrições de chave, integridade 
referencial, check, entre outras. A restrição de tipo é apenas uma parte da 
restrição de domínio. Logo, a alternativa D está incorreta. 
O MySQL foi durante muito tempo o SGBD de código aberto mais utilizado pela 
comunidade de software livre. Ele perdeu espaço depois que a Oracle comprou 
o MySQL. O código do sistema é muito bem produzido e testado. Logo, temos 
mais uma alternativa errada. 
Resumindo, podemos encontrar nossa resposta na alternativa C. 
Gabarito: C 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
==11f7eb==
 
 
 
 
 
 
 72 
160 
 
3. BANCA: IADES ANO: 2017 ÓRGÃO: FUNDAÇÃO HEMOCENTRO DE 
BRASÍLIA – DF PROVA: TECNOLOGIA DA INFORMAÇÃO 
[34] Considere uma tabela relacional “R” e seus atributos definidos por R 
(F1,F2,F3,F4,F5) com dependências funcionais F1, F2, F3 → F4,F5 e F5 → F1,F2. 
Com base nessas informações, assinale a alternativa que contém o número total 
de superchaves distintas para essa tabela. 
(A) 2 
(B) 7 
(C) 8 
(D) 10 
(E) 12 
Comentário: Para responder a essa questão temos que ter em mente a 
definição de superchave: 
Uma superchaveé um conjunto de um ou mais atributos que, tomando 
coletivamente, permite-nos identificar unicamente uma entidade no conjunto de 
entidades. 
Agora que sabemos dessa informação podemos montar conjuntos distintos de 
atributos que possuem essas características. Para simplificar vamos começar 
pelo conjunto dos 5 atributos e, em seguinte, vamos compondo os demais 
conjuntos. A grande sacada é partir das dependências funcionais e perceber que 
F5 determina F1, F2, logo F5 pode ser superchave em conjunto com F3. Vamos 
lá ... 
(F1, F2, F3, F4, F5) --- superchave com 5 atributos 
(F1, F2, F3, F4), (F1, F2, F3, F5), (F5, F3, F2, F4), (F5, F3, F1, F4) --- super 
chave com 4 atributos 
(F1, F2, F3), (F5, F3, F1), (F5, F3, F2), (F5, F3, F4) - super chave com 3 atributos 
(F5, F3) - superchave com 2 atributos 
Vejam que no total temos 10 possíveis superchaves para a relação em questão. 
Sendo a nossa resposta observada na alternativa D. 
Gabarito: D 
 
4. BANCA: IADES ANO: 2017 ÓRGÃO: FUNDAÇÃO HEMOCENTRO DE 
BRASÍLIA – DF PROVA: TÉCNICO DE INFORMÁTICA 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 73 
160 
[32] Assinale a alternativa cuja superchave é válida para uma tabela relacional 
com atributos definidos por R(A, B, C, D, E) e com dependências funcionais AB 
→ C, DE → B e CD → E. 
a) ABC 
b) DEB 
c) CDE 
d) ACD 
e) CDEB 
Comentário: Precisamos descobrir um conjunto de atributos que determinem 
todos os outros atributos da tabela. Vejam que AB→C e CD→E, logo ABD → E, 
C. Sendo assim temos a nossa resposta na alternativa D. 
Vejam a alternativa A para termos um exemplo que não satisfaz a caraterística 
de chave. ABC não determina E nem D, logo não pode ser chave. Você pode 
treinar com as demais alternativas para entender porque elas não podem ser 
superchave da relação. 
Gabarito: D 
 
5. BANCA: IADES ANO: 2017 ÓRGÃO: FUNDAÇÃO HEMOCENTRO DE 
BRASÍLIA – DF PROVA: TÉCNICO DE INFORMÁTICA 
 
[33] Com base no conceito de normalização de banco de dados e na tabela 
apresentada, é correto afirmar que a tabela está 
a) somente na 1FN 
b) somente na 2FN. 
c) somente na 1FN e 2FN. 
d) na 1FN, 2FN e 3FN. 
e) somente na 3FN. 
Comentário: Analisando a figura acima podemos observar de forma explícita o 
conceito de dependência transitiva. Tal fato fere a terceira forma normal. Ao 
analisar os atributos, podemos ainda perceber que todos eles são atômicos, ou 
seja, estão de acordo com a primeira forma normal. E ainda, é possível verificar 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 74 
160 
que a chave primária é a matrícula, que é uma chave simples, desta forma não 
temos problemas com a segunda forma normal. Assim, nossa resposta está na 
alternativa C. 
Gabarito: C 
 
6. BANCA: IADES ANO: 2014 ÓRGÃO: FUNPRESP-EXE 
PROVA: ASSESSOR TÉCNICO – ANÁLISE DE SISTEMAS 
[40] Analise as tabelas de banco de dados seguintes 
 
Quanto à cardinalidade das tabelas apresentadas, assinale a alternativa correta. 
(A) 1:1. 
(B) 1:M. 
(C) 1:N. 
(D) N:N. 
(E) M:N. 
Comentário: Se você pensar nos seu caso na sua empresa. Geralmente um 
funcionário possui apenas um login nos sistemas e um login deve estar associado 
a apenas um funcionário. Logo, temos a cardinalidade máxima de 1:1 e a nossa 
resposta na alternativa A. 
Gabarito: A 
 
7. BANCA: IADES ANO: 2016 ÓRGÃO: PC-DF PROVA: PERITO CRIMINAL 
- CIÊNCIA DA COMPUTAÇÃO/INFORMÁTICA 
[65] O modelo relacional estabeleceu-se como o primeiro modelo de dados para 
aplicações comerciais. Existe uma base teórica indispensável para os bancos de 
dados relacionais, que possibilita um processamento eficiente das necessidades 
de informações dos respectivos usuários. A respeito dessa base teórica, assinale 
a alternativa correta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 75 
160 
a) A álgebra relacional é uma linguagem de consultas procedural e possui 
operações definidas em termos das respectivas operações fundamentais. 
b) As operações binárias da álgebra relacional são union, select e rename. 
c) A operação binária project da álgebra relacional permite a seleção de tuplas 
que satisfaçam determinada relação. 
d) A operação primária produto cartesiano da álgebra relacional permite associar 
informações de dois predicados quaisquer. 
e) Uma relação do banco de dados, uma relação constante e uma relação de 
conjuntos são os três tipos existentes de expressões básicas na álgebra 
relacional. 
Comentário: Vamos comentar cada uma das alternativas acima. A Álgebra 
Relacional é uma linguagem de consulta procedural, ou seja, o usuário dá as 
instruções ao sistema para que ele realize uma sequência de operações na base 
de dados para calcular o resultado desejado. Há seis operações fundamentais na 
álgebra relacional: Seleção, Projeção, Produto cartesiano, União, Diferença entre 
conjuntos, Renomear. Sendo assim, podemos marcar nossa resposta na 
alternativa A. 
Dessas operações apresentadas acima são consideradas binárias o produto 
cartesiano, a união e a diferença. As demais são operações unárias. Isso invalida 
as alternativas B e C. 
A operação de produto cartesiano permite associar informações de duas relações 
e não de dois predicados com está dito na alternativa D. 
Sobre a alternativa E, não existe essa categorização para expressões da álgebra 
relacional. 
Gabarito: A 
 
8. BANCA: IADES ANO: 2014 ÓRGÃO: TRE-PA PROVA: ANALISTA 
JUDICIÁRIO - ANÁLISE DE SISTEMAS 
[50] Um banco de dados relacional é aquele que utiliza maneiras de armazenar, 
manipular e recuperar dados unicamente na forma de tabelas. A respeito de um 
banco de dados relacional, assinale a alternativa correta. 
a) Todo dado pode ser acessado lógica e unicamente usando-se o nome da 
tabela, o valor da chave primária e o nome da coluna. 
b) As informações podem ser representadas de forma hierárquica, como em uma 
estrutura de dados em árvore. 
c) Dados inexistentes são representados pelo valor zero, quando numéricos, ou 
pelo valor branco, quando caractere. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 76 
160 
d) Operações de manipulação de dados em tabelas devem ser realizadas uma 
linha de cada vez. 
e) Em uma tabela do modelo relacional, cada linha deve possuir, em todas as 
colunas, o mesmo tipo de dado. 
Comentário: Vamos analisar as alternativas propostas pela questão. A letra A 
está correta, veja que para acessar um campo de uma tabela você precisa 
primeiramente da informação sobre qual tabela você vai acessar. Em seguida, é 
necessária uma chave que nos leve para a linha específica na qual nossa 
informação aparece. De posse desta tupla podemos projetar sobre uma coluna 
para selecionarmos a coluna na qual o campo está armazenado. 
Na alternativa B, temos a descrição do modelo hierárquico. O modelo relacional 
é estruturado em um conjunto de relações. Logo, errada! 
Dados inexistentes são representados pelo valor nulo ou NULL que significa que 
o campo não possui nenhum valor associado ao domínio específico definido para 
o mesmo. Logo, temos mais uma alternativa errada. 
As operações de manipulação de dados podem ser realizadas individualmente ou 
em bloco. Basta lembrar que podemos usar um UPDATE para atualizar várias 
linhas da tabela nomesmo comando. Sendo assim, a alternativa D também está 
errada. 
Gabarito: A 
 
9. BANCA: IADES ANO: 2013 ÓRGÃO: EBSERH PROVA: ANALISTA DE 
TECNOLOGIA DA INFORMAÇÃO - BANCO DE DADOS 
[27] A Normalização é um processo matemático formal, que tem seus 
fundamentos na teoria dos conjuntos e visa substituir um conjunto de entidades 
e relacionamentos por um outro. As Formas Normais são utilizadas, nesse 
processo, para tornar o modelo de dados bastante estável e sujeito a poucas 
manutenções. Sobre a aplicação correta das Formas Normais (FN), assinale a 
alternativa correta. 
a) Para verificar a questão da variação temporal de certos atributos e criar 
relacionamentos 1:N, entre a entidade original e a entidade criada por questões 
de histórico, aplica-se aplica a 1FN. 
b) Aplica-se a 2FN para decompor a entidade em uma ou mais entidades, sem 
grupos repetitivos. 
c) Para eliminar os atributos obtidos por meio de cálculos realizados, a partir de 
outros atributos, aplica-se a 4FN. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 77 
160 
d) A 2FN só é aplicável em entidades que possuam chaves primárias e candidatas 
concatenadas. 
e) A 5FN utiliza o conceito de dependência transitiva. 
Comentário: Veja que se fossemos armazenar os diversos preços de um 
produto que variam ao longo do tempo em apenas um campo da tabela 
acabaríamos com um atributo multivalorado. Para resolver isso, separamos esse 
atributo (preço) em uma tabela específica e resolvemos o problema da primeira 
forma normal. Sendo assim, essa é a nossa resposta. 
A segunda forma normal é usada para resolver problemas de dependência parcial 
da chave primária. Questões de grupos repetidos, sejam compostos ou 
multivalorados, são resolvidos pela primeira forma normal. Sendo assim, a 
alternativa B está incorreta. 
Os atributos obtidos por meio de cálculo podem ser vistos como dependentes 
transitivos dos atributos usados para calculá-los. Assim, para resolver problemas 
deste tipo aplicamos a terceira forma normal e não a quarta como sugere a 
alternativa C. 
A segunda forma normal só é aplicada quando temos chaves compostas. Sendo 
assim, a alternativa D está errada. 
Por fim, a quinta forma normal está associada ao conceito de dependência de 
junção e não ao de dependência transitiva como sugere a alternativa E. 
Nossa resposta, portanto, pode ser visualizada na letra A. 
Gabarito: A 
 
10. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[23] O modelo de dados relacional representa os dados da base de dados como 
uma coleção de relações. Informalmente, cada relação pode ser entendida como 
uma tabela ou um simples arquivo de registros, foi introduzido por Codd (1970) 
e é considerado o mais simples, com estrutura de dados uniforme, e também o 
mais formal existente. Considerando os conceitos relacionados a este modelo 
assinale a alternativa correta. 
a) Em sua terminologia, a linha é chamada de atributo, a coluna é chamada de 
tupla e a tabela de relação. 
b) O domínio é o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna. 
c) O grau de uma relação é o número de tuplas da relação. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 78 
160 
d) Uma relação é definida como sendo um conjunto de atributos entre duas ou 
mais entidades. 
Comentário: Sabemos que cada linha de uma tabela é uma tupla e cada coluna 
corresponde a um atributo. Assim, a alternativa A está errada. 
Já na alternativa B temos uma definição correta de domínio, ele limita os valores 
possíveis para uma determinada coluna da tabela. Essa limitação pode ser feita 
por meio de um tipo de dado e pode ainda ser restringida por meio da clausula 
check. Logo, nossa resposta encontra-se na alternativa B. 
O grau de uma relação é o número de atributos associados a relação, podem 
variar de 0 até n. Isso mesmo, a relação sem atributos é considerada a relação 
nula (nullary ou empty). 
Uma relação é um conjunto de atributos que define as colunas de uma tabela. 
Entidade é um conceito do modelo ER que vimos na aula passada. 
Finalizando, temos nossa resposta na alternativa B. 
Gabarito: B 
 
11. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[26] No projeto lógico, as restrições são importantes para garantir a integridade 
de um banco de dados. Assinale a alternativa que contém as restrições de 
integridade normalmente mais utilizadas. 
a) Integridade referencial, unicidade de chave e integridade de identidade. 
b) Integridade de relacionamento, integridade de chave e integridade referencial. 
c) Integridade semântica, integridade de chave e integridade de relacionamento. 
d) Unicidade referencial, unicidade de chave e unicidade semântica. 
Comentário: Vamos aproveitar a questão para revisar as integridades descritas 
no modelo relacional: 
• Integridade de Domínio (dom(A)) 
• Integridade de Chave (Unicidade) 
• Integridade de Vazio (def if(x!=null?x==null)) 
• Integridade de Entidade (PK != null) 
• Integridade Referencial (FK == PK(Chave Candidata) || FK == null) 
• Integridade Semântica (assertions ou triggers) 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 79 
160 
Ao analisar a lista acima podemos marcar nossa resposta na alternativa A. Agora 
avalie as demais alternativas riscando as restrições que não existem no modelo. 
Gabarito: A 
 
12. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[45] A normalização é um processo de refinamento do esquema do Banco de 
Dados, visando eliminar possíveis redundâncias, sanar dependências parciais 
entre atributos e reduzir os problemas com alterações, inclusões e exclusões. As 
etapas do processo são conhecidas como formas normais. Com relação aos 
conceitos de normalização, julgue os itens a seguir. 
I Podem ser utilizados dois tipos de abordagens/metodologias no processo de 
normalização (top-down e bottom-up). 
II Só existem 4 (quatro) formas normais. 
III A primeira forma normal (1FN) elimina os grupos repetitivos. 
IV A segunda forma normal (2FN) elimina as dependências transitórias. 
A quantidade de itens certos é igual a 
a) 1. 
b) 2. 
c) 3. 
d) 4. 
Comentário: A abordagem de normalização procura reduzir as anomalias de 
atualização e a redundâncias nos modelos relacionais. Esse processo é feito de 
acordo com uma sequência bem definidas e interdependentes de etapas, 
conhecidas como forma normal. No total temos 6 formas normais (1FN, 2FN, 
3FN, FNBC, 4FN e 5FN). Desta forma, podemos observar que as afirmações I e 
II estão erradas. 
Agora vamos analisar as afirmações III e IV. Veja que a primeira forma normal 
eliminas os grupos repetitivos ou multivalorados. Já a segunda forma normal 
elimina dependências parciais ou transitórias. Esse segundo termo é pouco 
utilizado mas pode ser admitido como correto. Desta forma, ambas as afirmações 
estão certas. E a nossa resposta pode ser marcada na letra B. 
Gabarito: B 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 80 
160 
13. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[46] Sobre o processo de normalização e os conceitos relacionados às três 
primeiras formas normais podemos afirmar que 
a) a dependênciafuncional é um conceito aplicado a todos os modelos de bancos 
de dados. 
b) no processo de normalização, temos que: eliminar os grupos repetitivos 
(1FN), depois eliminar as dependências funcionais (2FN) e, por último, eliminar 
as dependências transitivas (3 FN). 
c) a dependência funcional transitiva ocorre quando um atributo ou conjunto de 
atributos depende apenas de parte dos valores de uma chave primária. 
d) A dependência funcional parcial ocorre quando um atributo ou conjunto de 
atributos depende de outro atributo ou conjunto de atributos que não faz parte 
de uma chave primária. 
Comentário: Vamos comentar cada uma das alternativas acima. Me permitam 
antes fazer um rápido comentário. Essa questão não foi redigida com o devido 
cuidado no uso dos termos. Vejamos as alternativas. 
Na alternativa A fala que a dependência funcional é um conceito aplicado a todos 
os modelos de banco de dados. Não é verdade! DF é um conceito associado aos 
bancos de dados relacionais. 
Na alternativa B temos uma definição muito alto nível das três primeiras formas 
normais. Vejam especificamente que a segunda forma está definida como uma 
maneira de eliminar dependências funcionais, acredito que faltou falar que são 
DF parciais. Mesmos assim, essa alternativa foi dada como resposta e é de fato 
a menos errada dentre as alternativas. 
Já as alternativas C e D trocam as definições da segunda e terceira formas 
normais. Logo, ambas estão incorretas. 
Gabarito: B 
 
14. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[47] Assinale a alternativa incorreta em relação ao modelo de Bancos de Dados 
Relacionais. 
a) Sua base está na teoria de conjuntos e a álgebra relacional. 
b) Este modelo não dispõe de caminhos pré-definidos para se acessar os dados. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 81 
160 
c) A estrutura fundamental do modelo é a relação (tabela), que pode ter várias 
dimensões. 
d) O modelo implementa estruturas de dados baseadas em relações. 
Comentário: Observe que a questão pede a alternativa incorreta. Sabemos que 
o modelo relacional está baseado na teoria dos conjuntos e na álgebra relacional. 
Que sua estrutura fundamental é uma relação ou tabela. Logo, podemos afirmar 
que as alternativas A, C e D estão corretas. 
Já a letra B possui um equívoco, pois para acessar os dados você precisa do 
nome da tabela, da tupla e do campo especificado. Esse pode ser considerado 
um caminho para acessar qualquer dado. Sendo assim, temos nossa resposta na 
alternativa B. 
Gabarito: B 
 
15. BANCA: IADES ANO: 2014 ÓRGÃO: EMPRESA BRASILEIRA DE 
SERVIÇOS HOSPITALARES PROVA: ANALISTA DE TECNOLOGIA DA 
INFORMAÇÃO – PROCESSOS 
[30] Para se estabelecer relações entre linhas de tabelas de um banco de dados 
do tipo relacional, é importante entender o conceito de chave. Acerca desse 
tema, é correto afirmar que nesse tipo de banco de dados, há pelo menos três 
tipos de chaves, que são: 
(A) primária, alternativa e estrangeira. 
(B) estrangeira, nativa e múltipla. 
(C) externa, alternativa e secundária. 
(D) múltipla, estrangeira e nativa. 
(E) primária, importada e alternativa. 
Comentário: Dentro dos conceitos de chaves do modelo relacional temos as: 
superchaves, chaves, chaves primárias, chaves secundárias (ou alternativas) e 
chaves estrangeiras. Assim, podemos encontrar uma lista consistente de opções 
na alternativa A. 
Gabarito: A 
 
16. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 82 
160 
[32] Considerando os conceitos relacionados Banco de Dados e a arquitetura de 
um Sistema Gerenciador de Banco de Dados (SGBD), julgue os itens a seguir. 
I Toda informação em um banco de dados relacional é apresentada, no nível 
lógico, por valores em tabelas. 
II Um banco de dados é uma coleção de dados operacionais, logicamente inter-
relacionados e armazenados de maneira dependente dos programas que o 
utiliza. 
III Um SGBD relacional deve ter uma linguagem para definição, detalhamento e 
manipulação de dados. 
IV Um SGBD relacional não pode permitir valores nulos em nenhum campo de 
suas tabelas. 
A quantidade de itens certos é igual a 
a) 1. 
b) 2. 
c) 3. 
d) 4. 
Comentário: Vamos tecer rápidos comentários sobre cada afirmação: 
I. Verdade! Toda informação está organizada logicamente em tabelas. 
II. Falso! Lembre-se do conceito de independência de dados e aplicação 
presentes nos bancos de dados. Ele é plenamente válido aqui. 
III. Correto. Um banco de dado deve ter uma linguagem que permita a definição 
e manipulação de dados. 
IV. Sabemos que podemos ter valores nulos associados a campos da tabela, 
desde que os atributos sejam definidos de forma a aceitar esse valor. (NULL). 
Assim, as alternativas I e III estão corretas, e podemos marcar nossa resposta 
na alternativa B. 
Gabarito: B 
 
17. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[34] Considerando os conceitos relacionados a Banco de Dados e sua 
integridade, julgue os itens a seguir. 
I Uma chave primária não pode desempenhar a função de identificação única. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 83 
160 
II Um modelo conceitual de banco de dados representa a estrutura de dados de 
um Banco de Dados, com os recursos e particularidades de um Sistema de 
Gerenciamento de Banco de Dados específico. 
III Entidade pode ser definida como um objeto que existe no mundo real, com 
uma identificação distinta e com significado próprio. 
IV Uma das regras da integridade do modelo relacional afirma que nenhum 
campo que participe da chave primária de uma tabela básica pode aceitar valores 
nulos. 
A quantidade de itens certos é igual a 
a) 1. 
b) 2. 
c) 3. 
d) 4. 
Comentário: Vejamos os comentários sobre cada uma das alternativas: 
I. A função da chave primária em uma tabela é justamente de identificar 
univocamente cada uma das suas tuplas. Lembrando que a chave primária é 
uma superchave mínima escolhida entre as chaves candidatas. Logo, a afirmação 
I está incorreta. 
II. Errado! O modelo conceitual é independente de SGBD! 
III. Exato! Entidade são os nomes em uma descrição textual de requisitos de 
dados, elas representam objetos, sejam reais ou imaginários, com uma 
identificação distinta e possuem um significado próprio. 
IV. Correto! A restrição de integridade de entidade (PK != null) – Garante que 
a chave primária de uma entidade não receba o valor nulo. 
Sendo assim temos as afirmações III e IV como corretas e nossa resposta pode 
ser encontrada na alternativa B. 
Gabarito: B 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 84 
160 
EXERCÍCIOS IADES 
 
1. BANCA: IADES ANO: 2018 ÓRGÃO: CONSELHO FEDERAL DE MEDICINA 
- CFM PROVA: ANALISTA DE TECNOLOGIA DA INFORMAÇÃO 
[49] Por muitas vezes, é necessário representar dados em tabelas, que podem 
ser traduzidas por relações dentro de um banco de dados, como no exemplo a 
seguir. 
 
Com base no exposto e nos dados apresentados na tabela, é correto afirmar que 
(A) o uso de “Nome” como chave primária é uma boa prática. 
(B) a tabela em questão pode ser representada pelo seguinte esquema 
relacional:PESSOA(Nome: string, CPF: string, Idade: integer, Naturalidade: 
string). 
(C) “CPF” é uma chave primária e, por isso, é possível que possua valores iguais 
para diferentes da tabela. 
(D) o terceiro atributo da segunda tupla possui valor “123.456.789-01”. 
(E) a tabela representa uma relação de grau 3. 
 
2. BANCA: IADES ANO: 2018 ÓRGÃO: CONSELHO FEDERAL DE MEDICINA 
- CFM PROVA: ANALISTA DE TECNOLOGIA DA INFORMAÇÃO 
[34] Assim como a maioria das tecnologias, os bancos de dados existem em 
diferentes arquiteturas em diferentes aplicações. Acerca das vantagens e 
desvantagens dos bancos de dados relacionais, assinale a alternativa correta. 
(A) O MySQL é um sistema de gerenciamento de banco de dados (SGBD) 
relacional rápido, confiável e escalável. Entretanto, é mais conhecido por não ser 
um banco SQL de código aberto. 
(B) Uma das desvantagens dos bancos de dados relacionais é que eles não 
trabalham com dados estruturados. 
(C) Os bancos relacionais realizam a normalização dos dados, o que resulta em 
perda de velocidade. 
(D) A forte tipagem dos bancos relacionais é suficiente para garantir a 
integridade e a consistência dos dados. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 85 
160 
(E) O MySQL é um dos sistemas de mais baixa qualidade, por se tratar de um 
sistema de código aberto; isso, é pouco utilizado no mercado. 
 
3. BANCA: IADES ANO: 2017 ÓRGÃO: FUNDAÇÃO HEMOCENTRO DE 
BRASÍLIA – DF PROVA: TECNOLOGIA DA INFORMAÇÃO 
[34] Considere uma tabela relacional “R” e seus atributos definidos por R 
(F1,F2,F3,F4,F5) com dependências funcionais F1, F2, F3 → F4,F5 e F5 → F1,F2. 
Com base nessas informações, assinale a alternativa que contém o número total 
de superchaves distintas para essa tabela. 
(A) 2 
(B) 7 
(C) 8 
(D) 10 
(E) 12 
 
4. BANCA: IADES ANO: 2017 ÓRGÃO: FUNDAÇÃO HEMOCENTRO DE 
BRASÍLIA – DF PROVA: TÉCNICO DE INFORMÁTICA 
[32] Assinale a alternativa cuja superchave é válida para uma tabela relacional 
com atributos definidos por R(A, B, C, D, E) e com dependências funcionais AB 
→ C, DE → B e CD → E. 
a) ABC 
b) DEB 
c) CDE 
d) ACD 
e) CDEB 
 
5. BANCA: IADES ANO: 2017 ÓRGÃO: FUNDAÇÃO HEMOCENTRO DE 
BRASÍLIA – DF PROVA: TÉCNICO DE INFORMÁTICA 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 86 
160 
[33] Com base no conceito de normalização de banco de dados e na tabela 
apresentada, é correto afirmar que a tabela está 
a) somente na 1FN 
b) somente na 2FN. 
c) somente na 1FN e 2FN. 
d) na 1FN, 2FN e 3FN. 
e) somente na 3FN. 
 
6. BANCA: IADES ANO: 2014 ÓRGÃO: FUNPRESP-EXE 
PROVA: ASSESSOR TÉCNICO – ANÁLISE DE SISTEMAS 
[40] Analise as tabelas de banco de dados seguintes 
 
Quanto à cardinalidade das tabelas apresentadas, assinale a alternativa correta. 
(A) 1:1. 
(B) 1:M. 
(C) 1:N. 
(D) N:N. 
(E) M:N. 
 
7. BANCA: IADES ANO: 2016 ÓRGÃO: PC-DF PROVA: PERITO CRIMINAL 
- CIÊNCIA DA COMPUTAÇÃO/INFORMÁTICA 
[65] O modelo relacional estabeleceu-se como o primeiro modelo de dados para 
aplicações comerciais. Existe uma base teórica indispensável para os bancos de 
dados relacionais, que possibilita um processamento eficiente das necessidades 
de informações dos respectivos usuários. A respeito dessa base teórica, assinale 
a alternativa correta. 
a) A álgebra relacional é uma linguagem de consultas procedural e possui 
operações definidas em termos das respectivas operações fundamentais. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 87 
160 
b) As operações binárias da álgebra relacional são union, select e rename. 
c) A operação binária project da álgebra relacional permite a seleção de tuplas 
que satisfaçam determinada relação. 
d) A operação primária produto cartesiano da álgebra relacional permite associar 
informações de dois predicados quaisquer. 
e) Uma relação do banco de dados, uma relação constante e uma relação de 
conjuntos são os três tipos existentes de expressões básicas na álgebra 
relacional. 
 
8. BANCA: IADES ANO: 2014 ÓRGÃO: TRE-PA PROVA: ANALISTA 
JUDICIÁRIO - ANÁLISE DE SISTEMAS 
[50] Um banco de dados relacional é aquele que utiliza maneiras de armazenar, 
manipular e recuperar dados unicamente na forma de tabelas. A respeito de um 
banco de dados relacional, assinale a alternativa correta. 
a) Todo dado pode ser acessado lógica e unicamente usando-se o nome da 
tabela, o valor da chave primária e o nome da coluna. 
b) As informações podem ser representadas de forma hierárquica, como em uma 
estrutura de dados em árvore. 
c) Dados inexistentes são representados pelo valor zero, quando numéricos, ou 
pelo valor branco, quando caracter. 
d) Operações de manipulação de dados em tabelas devem ser realizadas uma 
linha de cada vez. 
e) Em uma tabela do modelo relacional, cada linha deve possuir, em todas as 
colunas, o mesmo tipo de dado. 
 
9. BANCA: IADES ANO: 2013 ÓRGÃO: EBSERH PROVA: ANALISTA DE 
TECNOLOGIA DA INFORMAÇÃO - BANCO DE DADOS 
[27] A Normalização é um processo matemático formal, que tem seus 
fundamentos na teoria dos conjuntos e visa substituir um conjunto de entidades 
e relacionamentos por um outro. As Formas Normais são utilizadas, nesse 
processo, para tornar o modelo de dados bastante estável e sujeito a poucas 
manutenções. Sobre a aplicação correta das Formas Normais (FN), assinale a 
alternativa correta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 88 
160 
a) Para verificar a questão da variação temporal de certos atributos e criar 
relacionamentos 1:N, entre a entidade original e a entidade criada por questões 
de histórico, aplica-se aplica a 1FN. 
b) Aplica-se a 2FN para decompor a entidade em uma ou mais entidades, sem 
grupos repetitivos. 
c) Para eliminar os atributos obtidos por meio de cálculos realizados, a partir de 
outros atributos, aplica-se a 4FN. 
d) A 2FN só é aplicável em entidades que possuam chaves primárias e candidatas 
concatenadas. 
e) A 5FN utiliza o conceito de dependência transitiva. 
 
10. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[23] O modelo de dados relacional representa os dados da base de dados como 
uma coleção de relações. Informalmente, cada relação pode ser entendida como 
uma tabela ou um simples arquivo de registros, foi introduzido por Codd (1970) 
e é considerado o mais simples, com estrutura de dados uniforme, e também o 
mais formal existente. Considerando os conceitos relacionados a este modelo 
assinale a alternativa correta. 
a) Em sua terminologia, a linha é chamada de atributo, a coluna é chamada de 
tupla e a tabela de relação. 
b) O domínio é o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna. 
c) O grau de uma relação é o número de tuplas da relação. 
d) Uma relação é definida como sendo um conjunto de atributos entre duas ou 
mais entidades. 
 
11. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[26] No projeto lógico, as restrições são importantes para garantir a integridade 
de um banco de dados. Assinale a alternativa que contém as restrições de 
integridade normalmente mais utilizadas. 
a) Integridade referencial, unicidade de chave e integridade de identidade. 
b) Integridade de relacionamento, integridadede chave e integridade referencial. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 89 
160 
c) Integridade semântica, integridade de chave e integridade de relacionamento. 
d) Unicidade referencial, unicidade de chave e unicidade semântica. 
 
12. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[45] A normalização é um processo de refinamento do esquema do Banco de 
Dados, visando eliminar possíveis redundâncias, sanar dependências parciais 
entre atributos e reduzir os problemas com alterações, inclusões e exclusões. As 
etapas do processo são conhecidas como formas normais. Com relação aos 
conceitos de normalização, julgue os itens a seguir. 
I Podem ser utilizados dois tipos de abordagens/metodologias no processo de 
normalização (top-down e bottom-up). 
II Só existem 4 (quatro) formas normais. 
III A primeira forma normal (1FN) elimina os grupos repetitivos. 
IV A segunda forma normal (2FN) elimina as dependências transitórias. 
A quantidade de itens certos é igual a 
a) 1. 
b) 2. 
c) 3. 
d) 4. 
 
13. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[46] Sobre o processo de normalização e os conceitos relacionados às três 
primeiras formas normais podemos afirmar que 
a) a dependência funcional é um conceito aplicado a todos os modelos de bancos 
de dados. 
b) no processo de normalização, temos que: eliminar os grupos repetitivos 
(1FN), depois eliminar as dependências funcionais (2FN) e, por último, eliminar 
as dependências transitivas (3 FN). 
c) a dependência funcional transitiva ocorre quando um atributo ou conjunto de 
atributos depende apenas de parte dos valores de uma chave primária. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 90 
160 
d) A dependência funcional parcial ocorre quando um atributo ou conjunto de 
atributos depende de outro atributo ou conjunto de atributos que não faz parte 
de uma chave primária. 
 
14. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[47] Assinale a alternativa incorreta em relação ao modelo de Bancos de Dados 
Relacionais. 
a) Sua base está na teoria de conjuntos e a álgebra relacional. 
b) Este modelo não dispõe de caminhos pré-definidos para se acessar os dados. 
c) A estrutura fundamental do modelo é a relação (tabela), que pode ter várias 
dimensões. 
d) O modelo implementa estruturas de dados baseadas em relações. 
 
15. BANCA: IADES ANO: 2014 ÓRGÃO: EMPRESA BRASILEIRA DE 
SERVIÇOS HOSPITALARES PROVA: ANALISTA DE TECNOLOGIA DA 
INFORMAÇÃO – PROCESSOS 
[30] Para se estabelecer relações entre linhas de tabelas de um banco de dados 
do tipo relacional, é importante entender o conceito de chave. Acerca desse 
tema, é correto afirmar que nesse tipo de banco de dados, há pelo menos três 
tipos de chaves, que são: 
(A) primária, alternativa e estrangeira. 
(B) estrangeira, nativa e múltipla. 
(C) externa, alternativa e secundária. 
(D) múltipla, estrangeira e nativa. 
(E) primária, importada e alternativa. 
 
16. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[32] Considerando os conceitos relacionados Banco de Dados e a arquitetura de 
um Sistema Gerenciador de Banco de Dados (SGBD), julgue os itens a seguir. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 91 
160 
I Toda informação em um banco de dados relacional é apresentada, no nível 
lógico, por valores em tabelas. 
II Um banco de dados é uma coleção de dados operacionais, logicamente inter-
relacionados e armazenados de maneira dependente dos programas que o 
utiliza. 
III Um SGBD relacional deve ter uma linguagem para definição, detalhamento e 
manipulação de dados. 
IV Um SGBD relacional não pode permitir valores nulos em nenhum campo de 
suas tabelas. 
A quantidade de itens certos é igual a 
a) 1. 
b) 2. 
c) 3. 
d) 4. 
 
17. BANCA: IADES ANO: 2010 ÓRGÃO: CFA PROVA: ADMINISTRADOR 
DE BANCO DE DADOS 
[34] Considerando os conceitos relacionados a Banco de Dados e sua 
integridade, julgue os itens a seguir. 
I Uma chave primária não pode desempenhar a função de identificação única. 
II Um modelo conceitual de banco de dados representa a estrutura de dados de 
um Banco de Dados, com os recursos e particularidades de um Sistema de 
Gerenciamento de Banco de Dados específico. 
III Entidade pode ser definida como um objeto que existe no mundo real, com 
uma identificação distinta e com significado próprio. 
IV Uma das regras da integridade do modelo relacional afirma que nenhum 
campo que participe da chave primária de uma tabela básica pode aceitar valores 
nulos. 
A quantidade de itens certos é igual a 
a) 1. 
b) 2. 
c) 3. 
d) 4. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 92 
160 
GABARITO 
1. B 
2. C 
3. D 
4. D 
5. C 
6. A 
7. A 
8. A 
9. A 
10. B 
11. A 
12. B 
13. B 
14. B 
15. A 
16. B 
17. B 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 93 
160 
QUESTÕES COMENTADAS FCC 
Aproveitamos esse espaço para dar continuidade ao processo de aprendizado comentando diversas 
questões da FCC dos últimos anos. Os comentários seguem logo abaixo da questão para que você 
possa fazer uma rápida revisão do conteúdo. Caso queira treinar apenas a resolução das questões, 
um bloco com as mesmas questões sem os comentários é apresentado em sequência. Qualquer 
dúvida estou às ordens, forte abraço e bons estudos! 
Tecnologia da Informação aplicada à Auditoria Tributária 
Atenção: Para responder às questões de números 61 a 68, considere as informações abaixo. 
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. 
 
Após criar o modelo, implementou o banco de dados em um Sistema de Gerenciamento de 
Banco de Dados, criou as tabelas e cadastrou as seguintes informações: 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 94 
160 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 61. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 95 
160 
Considere que o Auditor digitou um comando para inserir os valores abaixo na tabela 
ItemPedido. 
idItePed qtdItePed idPed idPro 
2 500 7 14 
A mensagem correta que traduzirá o resultado da operação é 
(A) you have an error in your SQL syntax. 
(B) out of range value for column 'qtdItePed'. 
(C) cannot add a child row: a foreign key constraint fails. 
(D) duplicate entry '2-7' for key 'PRIMARY'. 
(E) register successfully - 1 row(s) affected. 
Comentários: Observe que essa questão trata de umadas características principais de banco 
de dados relacionais: duas linhas não podem ter valores idênticos na chave primário. Na 
questão o Auditor tenta inserir uma nova linha cujo valor da chave primária, neste caso uma 
chave primária composta pelos atributos IdItePed e idPed, já existe entre os registros da tabela. 
Logo, o sistema de gerenciamento de banco de dados, ao tentar inserir essa linha vai 
apresentar um erro ao usuário (duplicate entry '2-7' for key 'PRIMARY'). Apenas por 
curiosidade as mensagens acima estão associadas ao MySQL. 
Gabarito: D. 
19. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 62. 
No modelo apresentado a entidade ItemPedido 
(A) possui chave primária composta, mas não possui chave estrangeira, logo, não garante 
integridade referencial. 
(B) possui uma chave primária composta pelos atributos idItePed e idPed, sendo que os 
atributos qtdItePed e idPro possuem dependência funcional completa com relação à chave 
primária. 
(C) deveria conter o campo PreUniPro, pois o preço unitário do produto deve ser incluído em 
cada item do pedido. 
(D) está relacionada com as entidades Pedido e Produto usando a notação Integrated 
DEFinition for Information Modelling − IDEF1X. 
(E) possui relação com cardinalidade n:n com a entidade Produto e 1:n com a entidade Pedido. 
Comentário: Essa questão vale a pena comentar todas as alternativas. Veja que na letra A, o 
examinador considerou corretamente a existência de uma chave primária composta. Contudo, 
ele errou ao afirmar que não existem chaves estrangeiras. Observe no diagrama original que 
existem duas chaves estrangeiras (IdPed e Idpro). Elas serão responsáveis por garantir a 
integridade referencial. Logo, essa não é a nossa resposta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 96 
160 
A alternativa B fala que a chave primária composta é dada por idItePed e idPed e que os demais 
atributos possuem dependência funcional total da chave primária. Podemos observa na tabela 
ItemPedido que esse fato está correto. Outra opção é entender que cada pedido pode ter 
vários itens. Neste caso, podemos visualizar a relação itemPedido como uma entidade fraca, 
veja que ela tem um valor sequencial para cada item da nota mais o identificador do pedido. O 
que diferencia uma linha da outra é o par de valores dos atributos que compõe a chave. Veja 
ainda que esse par vai determinar univocamente o produto e a sua quantidade em um pedido 
específico. Logo, temos a nossa resposta na alternativa B. 
Não precisaríamos do preço neste caso. Já temos o idPro. Logo, para descobrirmos o preço 
basta fazermos uma junção utilizando os valores das duas relações. Logo, a alternativa C está 
incorreta. 
O modelo IDEF1X usa vários aspectos diferentes dos que são apresentados na figura. 
Primeiramente IDEF1X separa os atributos chaves dos demais por uma linha dentro do 
retângulo. Outro ponto é que o modelo não utiliza a notação de pé-de-galinha para expressar 
a cardinalidade entre as entidades. Logo, temos uma alternativa errada. Você pode observar 
alguns conceitos básicos de IDEF1X nesta imagem: 
 
Por fim, temos a cardinalidade do modelo, neste caso representado pela notação pé-de-
galinha. A relação em questão se relaciona com cardinalidade 1:N com cada uma das outras 
duas, ou seja, possui relação com cardinalidade 1:n com a entidade Produto e 1:n com a 
entidade Pedido. 
Gabarito: B 
20. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 63. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 97 
160 
O Auditor tentou incluir os dados abaixo na tabela Pedido. 
idPed dataPed idCli 
13 2018-07-22 12 
Ao executar a operação de inclusão, ocorreu um erro porque 
(A) já existe um pedido criado para o cliente 12. 
(B) não existe um pedido cadastrado com id 13. 
(C) não há um cliente com id 12 cadastrado na tabela Cliente. 
(D) já existe um pedido cadastrado com id 13. 
(E) a data cadastrada não existe, já que o formato correto é dd/mm/yyyy. 
Comentário: Veja que neste caso o examinador verifica seu conhecimento sobre integridade 
referencial. Quando vamos incluir um novo registro na tabela pedido devemos associá-lo a um 
cliente já existente na nossa base de dados. Neste caso, o cliente cujo idCli é igual a 12 não 
existe entre as tuplas da relação cliente. Logo, temos nossa resposta na alternativa C. 
Gabarito: C 
21. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 64. 
Se na entidade ItemPedido fosse adicionado o atributo valorTotalItem e nesse atributo fosse 
armazenado o resultado da multiplicação do valor contido no atributo qtdItePed da entidade 
ItemPedido pelo valor contido no atributo PreUniPro da entidade Produto, a entidade 
ItemPedido violaria 
(A) todas as formas normais. 
(B) as regras de integridade referencial. 
(C) a terceira forma normal (3FN). 
(D) a segunda forma normal (2FN). 
(E) a primeira forma normal (1FN). 
Comentário: Neste caso teríamos uma dependência transitiva. Observe que (idItePed, idPed) 
→ (qtdItePed, PreUniPro) → valorTotalItem. Mas professor, neste caso PreUniPro não faz 
parte da relação, como podemos estabelecer essa transitividade? Precisamos pensar que 
idPro, que existe como atributo em ItemPedido, determina o PreUniPro. Logo, a inclusão deste 
novo campo levaria a um problema com a terceira forma normal. Assim, nossa resposta 
encontra-se na alternativa C. 
Gabarito: C 
22. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 65. 
Considere e avalie as asserções a seguir e a relação proposta entre elas. 
I. O relacionamento entre as entidades Pedido e ItemPedido é um relacionamento identificado 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 98 
160 
PORQUE 
II. idPed, que é chave estrangeira na entidade ItemPedido, faz parte da chave primária desta 
entidade. 
É correto afirmar que 
(A) a primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa. 
(B) tanto a primeira quanto a segunda são proposições falsas. 
(C) as duas asserções são proposições verdadeiras, mas a segunda não é justificativa correta da 
primeira. 
(D) a primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira. 
(E) as duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da 
primeira. 
Comentário: Observe que estamos falando que ItemPedido é uma entidade fraca e que, para 
construir uma relação baseada nesta entidade precisamos pegar emprestado o atributo chave 
da entidade Pedido. Neste caso, estamos diante de um relacionamento identificador ou 
identificado. O fato é que a chave primária de Pedido vai compor a chave primária da relação 
ItemPedido. Logo, ambas as alternativas estão corretas e a segunda é justificativa para a 
primeira. Isso nos leva a resposta na alternativa E. 
Gabarito: E 
 
23. Ano: 2018 Banca: FCC Órgão: DPE-AM Cargo: Analista Área: Banco de Sistemas Questão: 41. 
Considere que um Analista de Sistemas está modelando um banco de dados relacional de um 
escritório de Advocacia e precisa definir a tabela Consulta, que liga as tabelas Advogado e Cliente. 
Na tabela Consulta foram definidos os campos 
abaixo. 
OAB_Advogado – Primary Key 
ID_Cliente – Primary Key 
Data_Hora_Consulta 
Parecer_Do_Advogado 
Especialidade_Do_Advogado 
A chave primária é composta pelos campos OAB_Advogado e ID_Cliente. Cada Advogadoque 
trabalha no escritório atua em uma única especialidade (direito penal, civil, trabalhista etc.) e, na 
consulta, emite um parecer exclusivo para cada cliente atendido. Nestas condições, é correto afirmar 
que 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 99 
160 
(A) há um problema de dependência funcional parcial, pois o campo Parecer_Do_Advogado é 
dependente apenas do campo OAB_Advogado, que é parte da chave primária. 
(B) a tabela Consulta está correta e adequadamente normalizada de acordo com a primeira, segunda 
e terceira formas normais. 
(C) há um problema de dependência órfã, pois o campo Data_Hora_Consulta deveria ser 
dependente do ID da consulta, campo que está faltando na tabela. 
(D) todos os atributos não chave dependem integralmente da chave primária composta, 
demostrando que a tabela Consulta está na quarta forma normal. 
(E) há um problema de dependência funcional parcial, pois o campo Especialidade_Do_Advogado é 
dependente apenas do campo OAB_Advogado, que é parte da chave primária. 
Comentário: Analisando rapidamente a descrição dos atributos podemos perceber que a 
especialidade do advogado tem uma relação direta apenas com o a entidade “advogado” e não 
com o cliente. Logo, por ter uma chave primária composta, vai existir uma dependência parcial 
na relação que fere a segunda forma normal. Tal fato nos leva a resposta na alternativa E. 
Já os demais atributos não primários, data_hora_consulta e parecer_do_advogado são de fato 
relacionados ao contexto do encontro entre o advogado e seu cliente. 
Gabarito: E 
 
24. Ano: 2018 Banca: FCC Órgão: DPE-AM Cargo: Analista Área: Banco de Sistemas Questão: 42 
42. Na tabela abaixo, OAB_Advogado e ID_Cliente fazem parte da chave primária composta da 
tabela e Valor_Total_Honorario é resultado da aplicação do Percentual_De_Honorario sobre 
Valor_Da_Causa. 
Esta tabela 
(A) não está na primeira forma normal porque possui dependência funcional transitiva do campo 
ID_Cliente em relação ao campo OAB_Advogado. 
(B) cumpre todas as regras de normalização, já que todos os campos não chave são integralmente 
dependentes da chave primária composta. 
(C) não está na terceira forma normal porque possui um campo resultante de cálculo envolvendo 
outros dois campos que não fazem parte da chave primária. 
(D) respeita as boas práticas de modelagem e normalização, entretanto, para facilitar a busca de 
dados, a chave primária deveria ser composta apenas pelo campo OAB_Advogado. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 100 
160 
(E) não está na terceira forma normal porque possui tabelas aninhadas, ou seja, a tabela precisará 
ser dividida em duas tabelas relacionadas. 
Comentário: Essa é mais uma questão de normalização onde um dos atributos é derivado. 
Perceba que o valor total dos honorário é um percentual definido sobre o valor da causa. Logo 
temos uma dependência funcional onde Valor_Da_Causa, Percetual_De_Honorario → 
Valor_Total_Honorario. Como sabemos que chave primária é definida pelos atributos 
OAB_Advogado e ID_Cliente, podemos perceber uma dependência transitiva que fere a 
terceita forma normal. Logo, nossa resposta está presente na alternativa C. 
Gabarito: C 
 
 
25. Ano: 2018 Banca: FCC Órgão: TRT-06 Cargo: Analista Judiciário Área: Tecnologia da Informação 
Questão: 33 
Considere hipoteticamente a existência de empresas que terceirizam o fornecimento de Recursos 
Humanos a outras empresas. Cada funcionário pode ser cadastrado em várias dessas empresas 
terceirizadas, nos mesmos cargos ou em cargos diferentes. Um modelo abstrato de dados dessa 
relação entre Empresa_Terceirizada_RH e Funcionario é mostrado abaixo. 
 
Para um Analista especializado em Tecnologia da Informação implementar o modelo mostrado na 
figura, em um Sistema Gerenciado de Banco de Dados relacional, terá que 
(A) criar uma tabela de ligação entre Empresa_Terceirizada_RH e Funcionario, fragmentando o 
relacionamento n:m em dois relacionamentos 1:1, já que não é possível implementar a relação n:m 
em bancos de dados relacionais. 
(B) excluir o atributo cargoFuncionario, pois cada funcionário poderá ter um cargo diferente em cada 
empresa terceirizada onde se cadastrar. 
(C) utilizar a linguagem SQL, adicionando o parâmetro CROSS REFERENCES à instrução CREATE TABLE 
na criação de ambas as tabelas para estabelecer a relação n:m entre elas. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 101 
160 
(D) excluir o campo cargoFuncionario da tabela Funcionario e inserir na tabela 
Empresa_Terceirizada_RH, pois o cargo é cadastrado quando o funcionário faz a inscrição na 
empresa terceirizada. 
(E) criar uma tabela de ligação entre Empresa_Terceirizada_RH e Funcionario, fragmentando o 
relacionamento n:m em dois relacionamentos 1:n e colocando o campo cargoFuncionario como 
atributo simples nessa tabela de ligação. 
Comentário: A notação que descreve o relacionamento é conhecida como pé de galinha. Os 
três segmentos de reta desenhados próximos a cada entidade descrevem que a cardinalidade 
máxima é N. Já a barra vertical apresenta a cardinalidade mínima de 1 ou um relacionamento 
obrigatório. Para transformarmos o modelo conceitual em questão em um modelo relacional 
é necessário a criação de uma tabela de ligação. Essa tabela deverá ser formada pelas chaves 
primárias de cada uma das entidades como chave estrangeira. E possuir uma chave primária 
composta pelos dos atributos (idFuncionario e idEmpresaRH). Com essa tabela passamos a ter 
dois relacionamentos 1:N, entre a tabela de ligação e as entidades já representadas. 
Agora precisamos tratar do fato, descrito no enunciado, que diz “Cada funcionário pode ser 
cadastrado em várias dessas empresas terceirizadas, nos mesmos cargos ou em cargos 
diferentes.” Veja que o atributo cargoFuncionario deve fazer parte da tabela de ligação. Assim, 
o funcionário pode ter cargos diferentes em empresas diferentes. 
Gabarito: E. 
 
26. Ano: 2017 Banca: FCC Órgão: ARTESP Cargo: Especialista em Regulação de Transporte - 
Tecnologia da Informação Questão: 73. 
73. Na modelagem de um banco de dados relacional há diversos aspectos a serem considerados. 
Dentre tais aspectos, é correto afirmar que 
(A) a função exercida por um conjunto de entidades ligado a um conjunto de relacionamentos 
denomina-se gatilho. 
(B) uma modelagem de um banco de dados relacional suporta um número máximo teórico de 
conjuntos de entidades, não superior a 30. 
(C) as propriedades descritivas de um conjunto de entidades são denominadas de atributos. 
(D) conjuntos de relacionamentos não admitem atributos do tipo descritivo. 
(E) um conjunto de relacionamentos recursivo liga dois ou mais conjuntos de entidades. 
Comentário: O modelo relacional pode ser visto como um conjunto de entidades denominadas 
relações. Cada relação possui um conjunto de linhas ou tuplas. Cada tupla é uma instância do 
tipo ou entidade e possui nos seus atributos características descritivas desta entidade. 
Uma relação se associa com outra por meio de chave estrangeira, que liga uma ou várias tuplas 
de uma relação à uma ou várias tuplas de outra relação. Não existe número máximo teórico 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 102 
160 
para a quantidade de tuplas em uma relação, nem para a quantidadede relações dentro de 
um esquema. Veja que o Oracle não possui limitações para quantidade de tabelas em um banco 
de dados, nem de colunas em uma tabela. 
Os conjuntos de relacionamento são as conhecidas tabelas de ligação que, geralmente, fazem 
o relacionamento N:N entre duas entidades. Se você lembrar do modelo ER, deve ter em mente 
que os relacionamentos possuem atributos. Esses atributos vão aparece no conjunto de 
relacionamento. Relacionamento recurso não é um termo usado na teoria de banco de dados 
relacional. Existe um auto relacionamento quando a chave estrangeira referenciada está na 
própria tabela. É o caso do atributo gerente da tabela empregado. 
Gabarito: C 
 
27. Ano: 2017 Banca: FCC Órgão: ARTESP Cargo: Especialista em Regulação de Transporte - 
Tecnologia da Informação Questão: 74. 
74. Com o intuito de verificar se uma determinada relação R de um banco de dados relacional atende 
a segunda forma normal, deve-se verificar se 
(A) atributos que não façam parte de qualquer chave candidata de R são total e funcionalmente 
dependentes da chave primária de R. 
(B) o domínio de todos os atributos de R comportam valores considerados múltiplos. 
(C) todos os atributos de R são do tipo literal ou numérico. 
(D) a relação R tem uma chave primária composta por dois ou mais atributos. 
(E) o número de atributos da relação R é múltiplo de 2. 
Comentário: Sabemos que a segunda forma norma normal (2FN) procura eliminar 
dependências parciais de atributos primários. Em outras palavras, precisamos procurar por 
atributos que façam parte de uma chave candidata composta e verificar se individualmente 
algum deles consegue determinar outro atributo não chave da relação. 
Veja que, o acabamos de explicar acima pode ser reescrito de outra forma. Os atributos que 
não façam parte de qualquer chave candidata de R são total e funcionalmente dependentes da 
chave primária de R. Assim, nossa resposta encontra-se na alternativa A. 
Gabarito: A. 
 
28. Ano: 2017 Banca: FCC Órgão: TRT-11 Cargo: Analista Judiciário de TI – Q. 44 
Considere o modelo de dados abaixo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 103 
160 
 
Na relação entre as entidades Advogado e Processo um advogado poderá atuar em diversos 
processos, tanto como advogado de defesa como de acusação. Assim, cada processo terá, pelo 
menos, dois advogados. Com base nesse modelo, na implementação das tabelas do banco de dados 
em um Sistema de Gerenciamento de Banco de Dados relacional, 
(A) será necessária a criação de uma tabela entre Advogado e Processo e o relacionamento N:N dará 
lugar a dois relacionamentos 1:N. 
(B) a chave primária da tabela Processo deverá ser chave estrangeira na tabela Advogado. 
(C) a chave primária da tabela Advogado deverá ser chave estrangeira na tabela Processo. 
(D) ambas as tabelas (Processo e Advogado) deverão ter chave primária composta. 
(E) a tabela Advogado deverá ter um campo para especificar o tipo de atuação do advogado em cada 
processo (defesa ou acusação). 
Comentário: Já falamos algumas vezes sobre esse tipo de questão. Ela pergunta como vamos 
fazer a passagem do modelo entidade-relacionamento para o modelo relacional. Quais 
relações precisam ser criadas. Dado a existência de um relacionamento N:M, precisamos criar 
uma tabela auxiliar para representar os relacionamentos entre as entidades advogado e 
processo. Essa relação terá como chave primária os atributos chave das duas entidades. Ela 
poderá ainda ter outros atributos que fazem sentido apenas para o relacionamento. 
Veja, portanto, que a criação de uma tabela de ligação será necessária entre Advogado e 
Processo e o relacionamento N:N dará lugar a dois relacionamentos 1:N. Tal texto está 
presente na alternativa A, que é a resposta da nossa questão. 
Gabarito: A. 
 
29. Ano: 2017 Banca: FCC Órgão: TRE-SP Cargo: Técnico Judiciário de TI – Q. 57 
Considere as entidades abaixo que são integrantes de um modelo de banco de dados relacional. 
 
Analisando-se as entidades, tem-se que 
(A) estas entidades estabelecem dois relacionamentos n:m não-identificados (non-Identifying). 
(B) se for incluído um atributo pontuacao, ele terá que ser incluído na entidade Candidato. 
(C) se for incluído o atributo dataInscricaoCandidato, ele terá que ser incluído na entidade 
Candidato_Concurso. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 104 
160 
(D) para que a entidade Candidato esteja na 1a forma normal, a entidade Candidato_Concurso 
precisa estar normalizada. 
(E) a entidade Candidato_Concurso nunca estará na 2a forma normal porque ela possui chave 
primária composta 
Comentário: Vamos comentar cada uma das alternativas. 
Para respondermos com certeza a alternativa A precisamos ter o conhecimento de 
relacionamento identificado e não-identificado. Percebam que a tabela Candidato_concursos 
recebeu os atributos chaves das outras tabelas do modelo. Se esses atributos fizerem parte da 
chave da relação, no caso, Candidado_Concurso, temos um relacionamento identificado, caso 
contrário, se eles forem apenas atributos não chaves teríamos um relacionamento não 
identificado. Desta forma, não podemos falar de relacionando não identificado, pois os 
atributos são considerados chave primária da relação Candidato_Concurso. 
Já na alternativa B temos uma suposição, se formos incluir um novo atributo no modelo 
denominado pontuação, em qual relação ele deveria ser incluído. Perceba que a inclusão deve 
ser feita na tabela que representa o relacionamento Candidato_concurso, na mais razoável, 
visto que, você recebe uma pontuação quando participa de um concurso. 
Perceba que na alternativa C temos outra suposição, só que desta vez, o novo atributo, 
dataInscriçãoCandidato, está inserido na relação correta. Desta forma essa é a nossa resposta! 
A normalização de uma entidade ou relação não depende da normalização da outra. Desta 
forma a alternativa D está incorreta. 
A alternativa E apresenta um conceito incorreto. O fato de ter um atributo (veja que é atributo 
e não chave) composto fere a primeira forma normal. A 1FN exige que todos os atributos sejam 
atómicos. A segunda forma norma trata de eliminar as dependências parciais. Vejam que a 
alternativa apresente um texto totalmente desconexo. 
Gabarito: C. 
 
30. Ano: 2016 Banca: FCC Órgão: TRE-SP Cargo: Analista Judiciário de TI – Q. 59. 
Considere as informações abaixo. 
PROCESSO (Num_Processo, [Titulo_Eleitor, Nome_Eleitor, Zona_Eleitoral_Eleitor, 
Secao_Eleitoral_Eleitor, Status_Eleitor_no_Processo], 
Data_Criacao_Processo, Data_Solucao_Processo). 
Sabe-se que os seguintes requisitos se aplicam: 
− Um Eleitor pode ser citado em um ou mais processos. 
− Um Processo pode citar um ou mais eleitores, portanto, os dados de Eleitor, entre chaves na tabela 
(ou relação) acima, podem ser integrantes de um grupo de repetição. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 105 
160 
− Os atributos grifados são chaves-primárias de seus respectivos grupos de atributos, ou seja, 
Num_Processo é chave dos dados de processo e Titulo_Eleitor é chave dos atributos de eleitor. 
− O Status_Eleitor_no_Processo (ex. Ativo, Inativo, Desistente) pode ser diferente nos processos nos 
quais é citado, ou seja, o mesmo eleitor pode ter, por exemplo, o status de Desistente em um 
processo, mas Ativo em outro). 
Após a aplicação da 3FN, a situação ficou como segue: 
− PROCESSO (Num_Processo, Data_Criacao_Processo, Data_Solucao_Processo)− ELEITOR (Titulo_Eleitor, Nome_Eleitor, Zona_Eleitoral_Eleitor, Secao_Eleitoral_Eleitor) 
− CITAÇÃO (Num_Processo, Titulo_Eleitor, Zona_Eleitoral_Eleitor, Status_Eleitor_no_Processo) 
Os atributos em negrito são as chaves identificadoras das tabelas (ou relações). 
Um experiente Analista de Sistemas analisou a situação e concluiu, corretamente, que a 
normalização 
(A) deve manter o atributo Num Processo em ELEITOR, para ficar integralmente correta. 
(B) deve incluir o atributo Data_Solucao_Processo na CITAÇÃO, para ficar integralmente correta. 
(C) está integralmente correta. 
(D) deve retirar o atributo Zona_Eleitoral_Eleitor da CITAÇÃO, para ficar integralmente correta. 
(E) deve incluir o atributo Status_Eleitor_no_Processo em PROCESSO, para ficar integralmente 
correta. 
Comentário: Percebam que o processo de normalização foi feito de forma parcialmente correta. 
Primeiramente foram separados os atributos que descrevem cada uma das entidades do modelo. 
Desta forma, o atributo composto ELEITOR que inicialmente fazia parte da tabela de PROCESSO 
passou a ser uma entidade própria. A tabela de PROCESSO também ficou apenas com seus atributos. 
E uma nova tabela CITACAO foi criada para associar um processo a uma pessoa. O atributo 
status_eleitor_no_processo foi devidamente associado a citação, o que faz todo sentido. 
Contudo, perceba que o atributo zona_eleitoral_eleitor aparece de forma incorreta na tabela 
CITAÇÂO. Ele pode ser obtido por meio do título de eleitor, o que gera uma dependência parcial no 
modelo e fere a segunda forma normal. Assim, nossa resposta aparece na alternativa D: “deve retirar 
o atributo Zona_Eleitoral_Eleitor da CITAÇÃO, para ficar integralmente correta.” 
Gabarito: D 
 
31. Ano: 2017 Banca: FCC Órgão: TRE-SP Cargo: Técnico Judiciário de TI – Operação de 
computadores - Q. 57 
57. Um Técnico do TRE-SP deparou-se, hipoteticamente, com o seguinte problema: 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 106 
160 
Um banco de dados relacional, modificado por outro profissional, começou a apresentar anomalias. 
As entidades conceituais que embasaram o banco, originalmente, eram Processo e Cidadão. Os 
requisitos especificavam que o relacionamento entre tais entidades atendesse ao fato de que um 
processo poderia relacionar-se com um único cidadão e um cidadão, claramente, poderia relacionar-
se com mais de um processo. Isto para o caso do relacionamento denominado Autoria. Já, em outro 
relacionamento entre as mesmas entidades, denominado Participação, o processo poderia ter a 
participação de mais de um cidadão e cada um deles também poderia participar de mais de um 
processo. Ora, após a modificação do banco, quando os usuários tentaram entrar com mais de um 
cidadão na atualização de participação de um determinado processo, apesar de na tela ter o espaço 
para tal, o programa apresentava erro de consistência, não aceitando mais de um cidadão 
participante. Nesse caso, especificamente, ocorreu a implementação do relacionamento 
(A) Participação (Processo Participação de Cidadão, nesta ordem) como n:m. 
(B) Participação (Processo Participação de Cidadão, nesta ordem) como n:1. 
(C) Autoria (Processo Autoria de Cidadão, nesta ordem) como n:m. 
(D) Participação (Processo Participação de Cidadão, nesta ordem) como 1:n. 
(E) Autoria (Processo Autoria de Cidadão, nesta ordem) como n:1. 
Comentário: Depois de ler toda a histórica contada pelo enunciado podemos verificar que o 
relacionamento Participação deve permitir que 1 Cidadão participe de vários processos. Desta 
forma, temos que ter um relacionamento 1:n entre cidadão e processo. Neste caso, a nossa 
resposta está na alternativa B. 
Gabarito: B. 
 
 
32. BANCA: FCC ANO: 2016 ÓRGÃO: PREFEITURA DE TERESINA - PI 
PROVA: ANALISTA TECNOLÓGICO - ANALISTA DE SUPORTE TÉCNICO 
[29] Em um banco de dados relacional existe a figura do valor nulo, ou seja, atributos de um conjunto 
de entidades podem ter esse valor. O valor nulo indica 
a) ausência de valor para um atributo de uma entidade de um conjunto de entidades. 
b) que em sua composição deve constar o caractere %. 
c) existência de múltiplos valores para um atributo de uma entidade de um conjunto de entidades. 
d) que o conteúdo do atributo de uma entidade de um conjunto de entidades foi preenchido com o 
valor 0 (zero). 
e) que em sua composição deve constar a sequência de caracteres //. 
Comentário: Primeiramente o nulo é um valor especial presente em cada tipo de dados 
descrito no modelo. Os valores nulos (diferente do zero, da string vazia, da string de caracteres 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 107 
160 
em brancos e outros valores não nulos) existem para representar dados não existentes de 
forma sistemática e independente do tipo de dado. Sendo assim, podemos marcar nossa 
resposta na alternativa A. 
Gabarito: A 
 
 
33. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-SP PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[56] Durante a análise das características típicas de um Sistema Gerenciador de Bancos de Dados 
Relacional – SGBDR, um Analista de Sistemas verifica: 
I. Oferece suporte a várias linguagens sem a necessidade de uma sintaxe definida em quaisquer uma 
delas no âmbito de Data Manipulation Language − DML e Data Definition Language − DDL, porém 
deve ter, pelo menos, uma das linguagens com sintaxe restritiva e bem definida no âmbito de 
Transaction Control Language − TCL e Data Control Language − DCL. 
II. A Inserção, a atualização e a eliminação é de alto nível, ou seja, a capacidade de manipular a 
relação base ou relações derivadas como um operador único é aplicável não somente à recuperação 
de dados, mas também à inserção, alteração e eliminação de dados. 
III. Representa a descrição do Banco de Dados no nível físico na forma de dados em tabelas, 
permitindo que usuários autorizados apliquem formas distintas de manipular os dados nessas 
tabelas. 
Estão corretas as características que constam APENAS em 
a) I. 
b) I e II. 
c) II. 
d) II e III. 
e) III. 
Comentário: Vamos comentar cada uma das alternativas acima. 
Percebam que na alternativa I ele escreve com um vocabulário um pouco rebuscado, mas diz, 
mais ou menos, o seguinte. Não existe uma sintaxe bem definida para os comandos de 
manipulação de dados e criação de objetos em SQL. Isso é um absurdo, o sucesso da linguagem 
passa por uma sintaxe bem definida, portanto alternativa I está incorreta. 
Na alternativa II o examinador diz que a existência dos comandos de INSERT, UPDATE e DELETE 
permite a utilização destes comandos para execução das tarefas de inserção, atualização e 
eliminação. Nada mais justo e correto, não acha? Sendo assim, a alternativa II está correta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 108 
160 
A ideia do modelo de dados relacional é justamente reduzir o conhecimento a respeito das 
estruturas físicas do banco de dados. Vejam que ele representa o modelo em um nível lógico. 
Desta forma, a alternativa também se encontra errada. 
Juntando os comentários acima, podemos marcar nossa resposta na alternativa E, que bate 
perfeitamente com o gabarito da questão. 
Gabarito: C 
 
34. BANCA: FCC ANO: 2017 ÓRGÃO: TRF - 5ª REGIÃO PROVA: ANALISTA JUDICIÁRIO - 
INFORMÁTICA 
[44] Considere que a tabela abaixo para controle de funcionários, possui o campo registro como 
chave primária e que o campo salario_liquido é resultante da subtração do desconto sobre o 
salario_bruto.Esta tabela 
a) está na segunda forma normal (2FN) porque possui chave primária simples da qual dependem 
todos os demais atributos. 
b) possui uma anomalia de inclusão, já que não será possível cadastrar um valor do campo 
salario_liquido. 
c) atende corretamente a todas as principais formas normais (1FN, 2FN e 3FN). 
d) não está na terceira forma normal (3FN) porque possui um campo calculado. 
e) não está na primeira forma normal (1FN), pois salario_liquido não é dependente da chave 
primária. 
Comentário: Para definir se temos um problema com dependência parcial ou transitiva 
precisamos descobrir que é a chave primária da relação. No enunciado da questão existe a 
informação que o atributo registro faz esse papel. Logo, não temos problemas com a segunda 
forma normal. Agora, podemos observar que o salário líquido é o resultado da subtração do 
salario bruto pelo desconto. Assim podemos verificar a seguinte dependência funcional 
transitiva: 
Registo → salario_bruto, desconto → salario_liquido 
Esse atributo, por se tratar de um atributo derivado, pode ser excluído da tabela para resolver 
o problema com a terceira forma normal. Sendo assim, temos nosso gabarito na alternativa D. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 109 
160 
Gabarito: D 
 
35. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[31] O modelo relacional é um modelo formal, baseado na teoria matemática das relações, que 
representa os dados no banco de dados em uma coleção de tabelas relacionadas. Utiliza o conceito 
de 
a) herança, ou referência a objetos do tipo tabela, de forma semelhante ao que ocorre com as 
classes em modelos orientados a objetos. 
b) tuplas, que lidam com qualquer estrutura de dados existente em aplicações criadas em linguagens 
de programação orientadas a objetos. 
c) colunas (ou campos), podendo conter valores inteiros, reais, literais e de referência, não estando 
limitadas quanto aos tipos de dados. 
d) stored procedures, que são estruturas semelhantes aos métodos dos modelos orientados a 
objetos, porém, os procedures não são limitados como os métodos. 
e) integridade referencial, onde o conteúdo de um campo chave estrangeira de uma relação precisa 
coincidir com um valor que esteja contido no campo que é chave primária na sua tabela pai. 
Comentário: O modelo relacional está associado a ideia de relação que pode ser vista como 
um conjunto de tuplas (linhas) que possuem atributos (colunas). O relacionamento entre as 
tabelas é feito por meio de chaves estrangeiras que garante a integridade referencial. Neste 
caso o conteúdo do campo chave estrangeira de uma relação deve ser igual a um dos valores 
contidos no campo de referência da tabela pai ou ser nulo. Desta forma, podemos marcar nossa 
resposta na alternativa E. 
Gabarito: E 
 
36. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[32] Considere uma relação de trabalho flexível e hipotética, onde cada funcionário, que possui uma 
única Carteira de Trabalho e Previdência Social, pode trabalhar em diversas empresas ao mesmo 
tempo, e estas empresas podem manter inúmeros funcionários. Nessa relação estabelecida de 
forma correta em um Sistema Gerenciador de Banco de Dados Relacional, considere que a chave 
primária da tabela funcionario é matriculaFuncionario, da tabela empresa é idEmpresa e da tabela 
empresa_funcionario é uma composição de matriculaFuncionario e idEmpresa. Um Analista de 
Sistemas infringirá as regras da segunda forma normal (2FN) se colocar na tabela 
empresa_funcionario o campo 
a) cargo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 110 
160 
b) salario. 
c) cargaHorariaMensal. 
d) regrasDeTrabalho. 
e) numeroCarteiraTrabalho. 
Comentário: Temos que procurara dentre as alternativas uma que seja dependente de apenas 
um dos seguintes atributos: matriculaFuncionario e idEmpresa. Perceba que os atributos cargo, 
salario, cargaHorariaMensal e regrasDeTrabalho são definidos por uma associação entre um 
funcionário e uma empresa, logo são determinados pelos dois atributos conjuntamente. Agora, 
o atributo numeroCarteiraTrabalho se refere unicamente ao empregado, e portanto, se 
aparecer na tabela empresa_funcionario vai ferir a segunda forma normal. Sendo assim, nossa 
resposta pode ser visualizada na alternativa E. 
Gabarito: E 
 
37. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[54] Considere, por hipótese, que um Analista de Sistemas está trabalhando no projeto conceitual 
de um sistema de controle de processos compartilhado entre tribunais, o qual futuramente será 
projetado para ser processado em um modelo de banco de dados relacional normalizado. O Analista 
levantou os seguintes requisitos: 
− A entidade tribunal deverá ser identificada de forma unívoca pelo atributo identidade do tribunal 
que será a chave primária; A entidade processo terá sua chave primária composta por um número 
sequencial de 1 a n mais a identidade do tribunal ao qual está vinculado. 
O motivo da incorporação da identidade do tribunal na chave primária de processo bem como o tipo 
de relacionamento entre as entidades tribunal e processo são, respectivamente, a 
a) manutenção da unicidade da identidade do tribunal; relacionamento de dependência (tribunal é 
entidade fraca de processo). 
b) necessidade de se manter, em uma única tabela, os tribunais e os processos; relacionamento 
unitário. 
c) necessidade de se manter um pseudo-relacionamento entre tribunal e processo; relacionamento 
ternário (tribunal + tribunal e processo). 
d) manutenção da unicidade da identidade do processo; relacionamento de dependência (tribunal 
é entidade fraca de processo). 
e) manutenção da unicidade da identidade do processo; relacionamento de dependência (processo 
é entidade fraca de tribunal). 
Comentário: Veja que cada tribunal cria um valor sequencial para seus processos. Logo, temos 
que incluir na chave de Processo a identidade do tribunal. Isso faz com que a entidade processo 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 111 
160 
dependa a entidade tribunal, tornando-a uma entidade fraca. Assim, conseguimos manter a 
unicidade da chave de processo. Logo, nossa resposta encontra-se na alternativa E. 
Gabarito: E 
 
38. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[55] Considere, por hipótese, os requisitos abaixo, levantados durante a modelagem de dados: 
I. A entidade Empregado exerce dois papéis: Gerente e Gerenciado. Cada empregado tem um só 
gerente e um gerente chefia diversos empregados. 
II. Um empregado (entidade Empregado) ocupa somente um cargo (entidade Cargo) que também 
pode ser ocupado por outros empregados. 
III. Um departamento (entidade Departamento) aloca diversos empregados (entidade Empregado). 
Um empregado só pode ser alocado em um único departamento. 
IV. Os atributos identificadores das entidades Empregado, Cargo e Departamento são, 
respectivamente, Matrícula, Código do Cargo e Código do Departamento. 
Em um modelo normalizado, são chaves estrangeiras em I, II e III, respectivamente, 
a) Matrícula (do gerenciado), Código do Cargo e Código do Departamento. 
b) Matrícula (do gerente), Matrícula e Código do Departamento. 
c) Matrícula (do gerente), Código do Cargo e Código do Departamento. 
d) Matrícula (do gerenciado), Matrícula e Matrícula. 
e) Matrícula (do gerenciado),Código do Cargo e Matrícula. 
Comentário: Primeiramente é importante ter em mente que uma chave estrangeira pode ser 
caracterizada desta forma, mesmo estando na própria relação. Esse caso pode ser observado 
na entidade Empregado que possui um atributo matricula do gerente. 
As demais entidades possuem um relacionamento 1:n. O código do cargo deve estar presente 
na tabela empregado, assim como o código do departamento. Desta forma, podemos marcar 
nossa resposta na alternativa C. 
Gabarito: C 
 
39. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: TÉCNICO JUDICIÁRIO – PROGRAMAÇÃO 
[61] Considere o diagrama entidade-relacionamento abaixo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 112 
160 
 
As chaves primárias de Cidadão e Processo são pk_cidadao e pk_processo, respectivamente. O 
relacionamento Consulta possui a cardinalidade 0,n com n>1 em ambos os lados. 
Em um banco de dados relacional normalizado, estará correta a criação da tabela 
a) Processo tendo como chave estrangeira pk_cidadao e Consulta tendo como chave estrangeira 
pk_processo. 
b) Cidadão tendo como chave estrangeira pk_processo e Consulta tendo como chave estrangeira 
pk_cidadao. 
c) Consulta tendo pk_processo como chave primária e Cidadão tendo pk_processo como chave 
estrangeira. 
d) Consulta tendo pk_cidadao como chave primária e Processo tendo pk_cidadao como chave 
estrangeira. 
e) Consulta tendo como chave primária pk_cidadao mais pk_processo. 
Comentário: Veja que a solução para o problema da questão passa pela criação de uma tabela 
de ligação Consulta contendo as chaves primárias de Cidadão e Processo, neste caso, 
pk_cidadao e pk_processo. Desta forma, podemos marcar nossa resposta na alternativa E. 
Gabarito: E 
 
40. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: TÉCNICO JUDICIÁRIO – PROGRAMAÇÃO 
[64] Considere as tabelas relacionais abaixo. 
 
Considerando que os elementos que identificam de forma única e inequívoca um cidadão e um 
processo são, respectivamente, CPF_Cidadao e Num_Processo e que a relação 
Tab_Rel_Processo_Cidadao entre Tab_Cidadao e Tab_Processo é de muitos para muitos, ou seja, 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 113 
160 
um cidadão pode impetrar um ou mais processos e um processo pode ser impetrado por um ou mais 
cidadãos, as formas normais infringidas, respectivamente, nas três tabelas são: 
a) 1FN, 2FN e 3FN. 
b) 2FN, nenhuma e 3FN. 
c) 3FN, 1FN e nenhuma. 
d) nenhuma, 1FN e 2FN. 
e) nenhuma, nenhuma e 2FN. 
Comentário: Veja que precisamos analisar cada uma das tabelas. A Tab_Proceso está na 
terceira forma normal. Todos os atributos são atômicos e não existe dependência parcial ou 
transitiva. Já a Tab_Cidadao não está nem na primeira forma normal, pois possui um atributo 
multivalorado. Por fim, a Tab_Rel_Processo_Cidadao possui um atributo (Endereco_Cidadao) 
que depende apenas de parte da chave primária. Logo, as formas normais infringidas são 
respectivamente, nenhuma, 1FN e 2FN. 
Gabarito: D 
 
41. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – SUPORTE EM 
TECNOLOGIA DA INFORMAÇÃO 
[68] Em um Modelo Entidade-Relacionamento existem as entidades NotaFiscal e Produto que 
estabelecem uma relação n:m. Em um Sistema Gerenciador de Banco de Dados Relacional, um 
Analista de Suporte implementou a tabela de ligação ItemNotaFiscal entre as tabelas NotaFiscal e 
Produto, contendo os campos abaixo. 
NumeroNotaFiscal (chave primária, chave estrangeira) 
NumeroProduto (chave primária, chave estrangeira) 
Descricao 
Quantidade 
PrecoUnitario 
Uma anomalia existente na tabela ItemNotaFiscal, que infringe as regras de normalização, é a 
existência de 
a) atributos compostos ou derivados. 
b) dependência funcional parcial. 
c) dependência funcional transitiva indireta. 
d) atributos multivalorados. 
e) dependência funcional transitiva direta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 114 
160 
Comentário: Observe que descrição depende apenas do número do produto. Sendo assim, 
temos um problema com a segunda forma normal que não admite dependência parcial. Logo, 
nossa resposta está na alternativa B. 
Gabarito: B 
 
42. BANCA: FCC ANO: 2017 ÓRGÃO: DPE-RS PROVA: ANALISTA – BANCO DE DADOS 
[32] O modelo relacional em banco de dados comporta o conceito de chaves primárias e de chaves 
candidatas, ambas incluindo a propriedade da unidade. Supondo K um conjunto de atributos da 
tabela T, K terá a propriedade da unicidade se 
a) o número de atributos que compõem K for igual a 1. 
b) comportar apenas 1 índice em seus atributos. 
c) houver apenas 1 atributo do tipo numérico em K. 
d) não houver duas tuplas de T com o mesmo valor para K. 
e) todos os atributos de K tiverem a mesma limitação em seus números de caracteres. 
Comentário: Observe que se K é único em uma tabela ele não pode se repetir em duas linhas 
distintas da mesma relação. Sendo assim, não pode haver duas tuplas em T com o mesmo valor 
de K. Isso nos leva a resposta na alternativa D. 
Gabarito: D 
 
43. BANCA: FCC ANO: 2017 ÓRGÃO: DPE-RS PROVA: ANALISTA – BANCO DE DADOS 
[36] Observou-se que uma tabela de um banco de dados relacional está na segunda forma normal 
pois, além de estar na primeira forma normal, 
a) existe um número par de atributos na chave primária da tabela. 
b) cada atributo não chave da tabela é dependente de todos os atributos da chave primária da 
tabela. 
c) todos atributos da tabela são atômicos (contêm exatamente um valor para cada atributo). 
d) os atributos da chave primária da tabela são do tipo numérico. 
e) os atributos não chave da tabela são mutuamente dependentes entre si. 
Comentário: Ao procurarmos nas alternativas uma sentença que esteja alinhada com a 2FN, 
que não permite dependência parcial, podemos encontra nossa resposta na alternativa b). Nela 
temos a afirmação de que todos os atributos não chave devem ser plenamente dependentes 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 115 
160 
da chave primária. Ou seja, se tivermos uma chave primária composta, a identificação dos 
demais atributos deve ser feita pela totalidade da chave. 
Gabarito: B 
 
44. BANCA: FCC ANO: 2017 ÓRGÃO: DPE-RS PROVA: ANALISTA – BANCO DE DADOS 
[33] Em um banco de dados relacional, quando se faz a definição do domínio de um atributo, o 
objetivo é determinar 
a) o número máximo de atributos permitido para a tabela desse atributo. 
b) o número máximo de registros permitido para a tabela desse atributo. 
c) a regra de formação do nome desse atributo. 
d) o conjunto de valores permitido para cada atributo. 
e) as tabelas que podem utilizar tal atributo como chave estrangeira. 
Comentário: O domínio de um atributo são todos os valores válidos que podem ser associados 
a variável. Assim, temos nossa resposta na alternativa D. 
Gabarito: D 
 
45. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-PR PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE 
SISTEMAS 
[37] Considere a tabela ItemPedido abaixo, onde a chave primária é composta pelos campos 
NumeroPedido e NumeroItemPedido. 
 
É correto afirmar que 
a) para esta tabela estar na 2FN a chave primária não pode ser composta. 
b) NumeroPedido não pode conter valores repetidos, pois é parte da chave primária. 
c) para esta tabela estar na 3FNa coluna TotalPedido deve ser excluída. 
d) esta tabela está na 3FN porque não tem dependência transitiva de colunas. 
e) esta tabela está na 1FN porque a chave primária é composta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 116 
160 
Comentário: Questão bem interessante. Trata dos conceitos básicos de normalização. Para 
respondermos à questão precisamos observar se os requisitos das formas normais são 
atendidos. Iniciamos pela primeira forma normal. Veja que nenhum dos atributos são 
compostos ou multivalorados. Logo, a 1FN é atendida. A segunda forma normal diz que não 
deve existir dependência parcial. Observe que todos os atributos não chave são plenamente 
dependentes da chave primária. Logo, a 2FN também é atendida. Por fim, vamos para a terceira 
forma normal. Vejam que o atributo TotalPedido é uma dependência transitiva estabelecida 
da seguinte forma: 
NumeroPedido, NumeroItemPedido → Quantidade, Preco → TotalPedido 
Sendo assim observamos que “para esta tabela estar na 3FN a coluna TotalPedido deve ser 
excluída” visto que ela é um atributo derivado. Ou seja, TotalPedido é um atributo derivado. 
Logo nosso gabarito está na alternativa C. 
Gabarito: C 
 
46. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-PR PROVA: TÉCNICO JUDICIÁRIO – PROGRAMAÇÃO DE 
SISTEMAS 
[40] Considere hipoteticamente que em um Tribunal cada Juiz conta com a ajuda de vários 
Assistentes, de acordo com o volume de processos que precisa analisar e julgar. Cada Assistente, por 
sua vez, auxilia vários Juízes, de acordo com a demanda de trabalho. Se Juiz e Assistente forem 
entidades de um modelo de dados relacional, a cardinalidade entre elas será n:m. Na criação das 
tabelas a partir do modelo, 
a) a chave primária da tabela Juiz será chave estrangeira na tabela Assistente e a chave primária da 
tabela Assistente será chave estrangeira na tabela Juiz. 
b) será necessário criar uma tabela de ligação entre Juiz e Assistente e o relacionamento n:m dará 
lugar a dois relacionamentos 1:n. 
c) será estabelecido um relacionamento bidirecional entre as tabelas Juiz e Assistente, com 
cardinalidade 1:1. 
d) para que a relação n:m seja mantida, as chaves primárias das tabelas Juiz e Assistente deverão ser 
compostas pelo Id do Juiz e pelo Id do Assistente. 
e) será necessário criar uma tabela de ligação entre Juiz e Assistente, gerando assim dois 
relacionamentos 1:1. 
Comentário: Podemos visualizar a questão da seguinte forma: 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 117 
160 
 
Desta forma, podemos observar que os relacionamentos entre assistente e assiste e entre 
assiste e juiz são relacionamentos 1:n. Tal fato, está expresso na alternativa B 
Gabarito: B 
 
47. BANCA: FCC ANO: 2017 ÓRGÃO: TRT - 24ª REGIÃO (MS) PROVA: TÉCNICO JUDICIÁRIO - 
TECNOLOGIA DA INFORMAÇÃO 
[43] Considere, hipoteticamente, uma relação de trabalho em que um funcionário pode trabalhar 
em várias empresas, sendo registrado em todas elas. Esta relação é representada na figura abaixo. 
 
Nesta relação, cada funcionário pode ocupar cargos diferentes em cada empresa onde trabalha 
recebendo, inclusive, salários diferentes por jornadas de trabalho variáveis. Nestas condições, 
quando o modelo for implementado em um Sistema Gerenciador de Banco de Dados relacional, 
a) se for incluído um campo salário este deverá ser colocado na tabela Funcionário. 
b) somente as tabelas Funcionário e Empresa serão criadas e relacionadas com cardinalidade n:n. 
c) o relacionamento n:n deverá ser desmembrado em dois relacionamentos 1:1, sendo Trabalha a 
entidade de ligação entre Funcionário e Empresa. 
d) se for incluído um campo cargo este deverá ser colocado na tabela associativa identificada como 
Trabalha. 
e) se for incluído um campo CargaHoráriaMensal ele deverá ser colocado na tabela Empresa. 
Comentário: Nossa resposta, não poderia ser a alternativa a), porque se houvesse um campo 
salário, ele deveria ser colocado no relacionamento "Trabalha", pois somente possui salário o 
funcionário que trabalha em alguma empresa. Desta forma, já conseguimos verificar que a 
resposta está na alternativa D. 
Gabarito: D 
Assiste
Cod_Assistente
Cod_Juiz
Cod_Assistencia
Assistente
Cod_Assistene
Nome_Ass
Juiz
Cod_Juiz
Nome_Juiz
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 118 
160 
 
48. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-PR PROVA: TÉCNICO JUDICIÁRIO - OPERAÇÃO DE 
COMPUTADORES 
[33] Em uma empresa cada projeto é desenvolvido por vários funcionários e cada funcionário só 
pode participar de um projeto. Para controlar os funcionários alocados em cada projeto foi criada a 
tabela abaixo em um banco de dados. 
 
Considerando as regras de modelagem de bancos de dados relacionais, esta tabela 
a) está modelada corretamente, já que permite visualizar em que projeto cada funcionário está 
trabalhando e quantos funcionários estão alocados em cada projeto. 
b) não está correta, pois seria necessário definir uma chave primária composta pelos campos 
idProjeto e MatriculaFuncionario, já que há repetição de idProjeto em várias linhas. 
c) deve ser desmembrada em duas tabelas relacionadas com cardinalidade 1:n (Projeto e 
Funcionario), para evitar a repetição dos dados do projeto para cada funcionário que participa dele. 
d) não está adequadamente modelada, pois um mesmo funcionário pode participar de vários 
projetos ao mesmo tempo, contrariando as regras do modelo relacional. 
e) deve ser ampliada, incluindo-se outras informações sobre o projeto (como valor e descrição) e 
sobre os funcionários (como cargo e função). 
Comentário: Olhando rapidamente para a tabela verificamos que a mesma precisa ser 
normalizada. Dentro da mesma relação temos atributos que deveriam pertencer a duas 
entidades distintas, quais sejam, Projeto e Funcionario. Logo, devemos desmembrar em duas 
tabelas com a cardinalidade 1:n. Assim, evitamos a repetição dos dados do projeto para cada 
funcionário que participe dele. 
Gabarito: C 
 
49. BANCA: FCC ANO: 2016 ÓRGÃO: PGE-MT PROVA: ANALISTA – ANALISE DE SISTEMAS 
[37] Considere um banco de dados cujo modelo Entidade-Relacionamento, em uma perspectiva 
lógica, possui duas entidades: processo e advogado relacionadas com cardinalidade n:m. Cada 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 119 
160 
advogado pode atuar em diversos processos, hora como advogado de acusação, hora como 
advogado de defesa, o que é definido em um atributo tipo_atuacao. Cada processo poderá ter, 
consequentemente, pelo menos dois advogados, um de defesa e um de acusação. Quando o modelo 
for implementado em um sistema gerenciador de banco de dados relacional, 
a) as duas entidades darão origem a duas tabelas e a relação n:m será implementada por um campo 
de ligação comum em ambas as tabelas. 
b) o campo tipo_atuacao será colocado na tabela advogado, pois o tipo de atuação é um atributo do 
advogado, que define a forma como ele atuará no processo. 
c) deverá ser criada uma tabela de ligação entre processo e advogado, originando duas relações com 
cardinalidade 1:1. O atributo tipo_atuacao será colocado nessa tabela. 
d) deverá ser criada uma tabela Atuação com um único campo, tipo_atuacao, já que o tipo da 
atuação do advogado pode ser diferente em cada processo que ele atua. 
e) deveráser criada uma tabela de ligação entre processo e advogado, originando dois 
relacionamentos 1:n. O atributo tipo_atuacao será colocado nessa tabela. 
Comentário: Veja que a lógica da questão não deve permitir que um advogado atue em um 
mesmo processo na defesa e na acusação. Logo, deve existe uma tabela de ligação com o 
atributo tipo de atuação que vai fazer parte da chave primária, juntamente com os atributos 
chaves de processo e advogado. Essa tabela de ligação terá um relacionamento de 1:n com 
dada uma das relações. Sendo assim, nossa resposta encontra-se na alternativa E. 
Gabarito: E 
 
50. BANCA: FCC ANO: 2016 ÓRGÃO: AL-MS PROVA: TÉCNICO DE INFORMÁTICA 
[51] Para responder à questão, considere o modelo mostrado na imagem abaixo, oriundo de uma 
situação hipotética: 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 120 
160 
 
Conclui-se, observando o modelo, que 
a) será necessário cadastrar, no mínimo, dois partidos com pelo menos um filiado cada. 
b) está sendo utilizada a notação IDEF1X para relacionar as duas entidades. 
c) se trata de um relacionamento 1:n não identificado. 
d) siglaPartido deveria fazer parte da chave primária na entidade Filiado. 
e) todo partido cadastrado precisará ter, no mínimo, um filiado cadastrado. 
Comentário: Veja que a notação que descreve a cardinalidade é a notação pé de galinha, e que, 
segundo o diagrama a cardinalidade seria de 1:n. Como o relacionamento é obrigatório, se você 
tiver instâncias na relação filiados, teria que ter pelo menos um partido político. Outro ponto 
é que a linha tracejada da notação descreve que o relacionamento é não identificado. Desta 
forma, nossa resposta está presente na alternativa C. 
Veja que sigla do partido é uma chave estrangeira na tabela filiado e não precisa fazer parte da 
chave primária. Agora chegamos na alternativa E, se você está lembrado que a linha tracejada 
trata de um relacionamento não identificador, que está relacionado ao fato do atributo de sigla 
do partido não compor a chave primária da relação Filiados. Logo, a alternativa e) está correta 
no meu ponto de vista. Mais uma vez, a ausência de recursos manteve o gabarito oficial. 
Gabarito: C 
 
51. BANCA: FCC ANO: 2016 ÓRGÃO: PREFEITURA DE TERESINA - PI 
PROVA: ANALISTA TECNOLÓGICO - ANALISTA DE SISTEMAS 
[29] Considere o modelo relacional: 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 121 
160 
 
Após a criação das tabelas, foram cadastrados os seguintes registros: 
 
Sobre o modelo de dados relacional apresentado, considere: 
I. Usa a notação crow's foot para representar o grau, ou cardinalidade, do relacionamento entre as 
entidades Orgao e Obra. 
II. Para toda obra que for cadastrada será necessário inserir no campo siglaOrgao da entidade Obra 
um valor já cadastrado no campo siglaOrgao da entidade Orgao. 
III. Caso as entidades Orgao e Obra estabelecessem um relacionamento n:n, no momento da 
implementação das tabelas seria necessário criar uma tabela de ligação entre elas e desmembrar o 
relacionamento em dois relacionamentos 1:n. 
IV. O modelo não está normalizado, ou seja, os valores das colunas não serão atômicos quando 
forem cadastrados e haverá dependência funcional parcial na entidade Obra. 
Está correto o que se afirma APENAS em: 
a) II e III. 
b) I e IV. 
c) II, III e IV. 
d) I e III. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 122 
160 
e) II e IV. 
Comentário: Primeiramente a alternativa I está incorreta pois a notação utilizada para 
representar a cardinalidade do relacionamento é a notação de sombras (shadow). Já a 
afirmação II está correta pois existe uma integridade referencial que precisa ser mantida entre 
as relações. A afirmação II fala da criação de uma tabela de ligação para interligar as instâncias 
da entidade no caso de um relacionamento n:m. Tal fato está perfeitamente correto. 
Por fim, o modelo não apresenta problemas de normalização. Logo a afirmação IV está 
incorreta. Desta forma, podemos marcar nossa resposta na alternativa A. 
Gabarito: A 
 
52. BANCA: FCC ANO: 2016 ÓRGÃO: PREFEITURA DE TERESINA - PI PROVA: TÉCNICO DE NÍVEL 
SUPERIOR - ANALISTA DE SISTEMAS 
[55] Durante o levantamento de requisitos um Analista de Sistemas identificou um relacionamento 
denominado Subordinação que relacionava um Órgão a outro da Prefeitura de Teresina como Órgão 
Subordinante (superior) e Órgão Subordinado. Esse relacionamento explicava a hierarquia 
administrativa entre órgãos. Desta forma, o Analista, durante a modelagem de dados, modelou 
corretamente Subordinação como 
a) relacionamento ternário. 
b) autorrelacionamento n:m. 
c) autorrelacionamento 1:n. 
d) relacionamento dependente. 
e) entidade nula. 
Comentário: Observamos que estamos tratando da mesma entidade: Órgão. Logo essa relação 
de subordinação trata de um autorelacionamento. Agora, precisamos descobrir a cardinalidade 
do mesmo. Sabemos que um órgão está organizado em uma estrutura hierárquica, logo um 
Orgão pode estar subordinado a apenas uma instância. Por outro lado, um Órgão pode ter 
vários subordinados. Desta forma, construímos uma cardinalidade 1:n. 
Gabarito: C 
 
53. BANCA: FCC ANO: 2016 ÓRGÃO: COPERGÁS - PE PROVA: ANALISTA TECNOLOGIA DA 
INFORMAÇÃO 
[57] Considere as tabelas a seguir com seus respectivos campos. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 123 
160 
 
Deve-se verificar se há violação da segunda forma normal (2FN) SOMENTE nas tabelas: 
a) TabelaB e TabelaD. 
b) TabelaA e TabelaE. 
c) TabelaA, TabelaB e TabelaC. 
d) TabelaC e TabelaE. 
e) TabelaA, TabelaC e TabelaE. 
Comentário: Vejamos cada uma das tabelas. Na TabelaA, código_funcionário determina nome 
do funcionário e cargo, logo fere a 2FN. Na TabelaB, não temos problema com a segunda forma 
normal, até porque a chave é simples. Na TabelaC, cpf_cliente determina nome_cliente, uma 
dependência parcial, mais uma vez, um problema para 2FN. A TabelaD possui chave primária 
simples. Por fim, a TabelaE ra_aluno determina nome_aluno, novamente uma dependência 
parcial. Logo, temos nossa resposta na alternativa E. 
Gabarito: E 
 
54. BANCA: FCC ANO: 2016 ÓRGÃO: TRF - 3ª REGIÃO PROVA: TÉCNICO JUDICIÁRIO - 
INFORMÁTICA 
[66] Para responder a questão, considere as informações abaixo. 
 
Se a tabela Processo for ligada a uma outra tabela em um relacionamento 1:n, sendo 1 processo 
para n da outra tabela, 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 124 
160 
a) as colunas NumeroSeqProcesso, DigitoProcesso e AnoAjuizamentoProcesso terão que aparecer 
obrigatoriamente na outra tabela como parte da chave primária. 
b) será obrigatório que na outra tabela seja cadastrado, pelo menos, um registro para cada valor da 
chave primária da tabela Processo. 
c) a chave primária da outra tabela precisa, necessariamente, aparecer na tabela Processo, para que 
seja garantida a integridade referencial. 
d) as colunas NumeroSeqProcesso, DigitoProcesso e AnoAjuizamentoProcesso terão que aparecer 
na outra tabela, para haver integridade referencial. 
e) nem todos os registroscadastrados na outra tabela precisarão estar relacionados a algum 
processo existente na tabela Processo 
Comentário: Essa questão do relacionamento entre a tabela processo e outra tabela em 1:n, 
basta pensar o seguinte. Supondo que um processo tenha vários ministros do supremo ligados 
a ele. E cada ministro só possa ter um processo por vez. Para simplificar vamos pensar que a 
chave tem apenas um nome genérico que é a descrição do processo: LAVAJATO, POSSEDELULA, 
MOSSACKFONSCECA. Agora basta associar cada um dos processos a lista de ministros para 
termos uma relação 1:n. Se voltarmos para os termos da questão, bastaria substituir os nomes 
dos processos pelos seus respectivos atributos que compõe a chave primária, no caso: 
NumeroSeqProcesso, DigitoProcesso e AnoAjuizamentoProcesso. 
Lewandowski (LAVAJATO) 
Carmen Lúcia (MOSSACKFONSCECA) 
Celso de Mello (MOSSACKFONSCECA) 
Marco Aurélio (POSSEDELULA) 
Gilmar Mendes (POSSEDELULA) 
Dias Toffoli (MOSSACKFONSCECA) 
Luis Fux (LAVAJATO) 
Rosa Weber (MOSSACKFONSCECA) 
Teori Zavascki (LAVAJATO) 
Roberto Barroso (POSSEDELULA) 
Edson Fachin (MOSSACKFONSCECA) 
Gabarito: D. 
 
55. BANCA: FCC ANO: 2016 ÓRGÃO: TRF - 3ª REGIÃO PROVA: TÉCNICO JUDICIÁRIO - 
INFORMÁTICA 
[67] Uma entidade Departamento é composta pelos atributos abaixo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 125 
160 
Código do Departamento 
Matrícula do Funcionário 
Nome do Departamento 
Nome do Funcionário 
Telefone do Departamento 
Telefone do Funcionário 
Número da CTPS 
Considerando-se que só poderá ser cadastrado um único número de telefone, tanto para os 
departamentos quanto para os funcionários, para que a entidade seja normalizada adequadamente, 
deve-se 
a) aplicar a segunda forma normal (2FN), de forma que todos os demais atributos sejam 
dependentes da chave primária, que deverá ser composta pelos atributos Código do Departamento 
e Matrícula do Funcionário. 
b) aplicar a primeira forma normal (1FN), colocando os atributos Matrícula do Funcionário, Nome 
do Funcionário, Telefone do Funcionário e Número da CTPS em uma entidade Funcionário 
relacionada adequadamente à entidade Departamento. 
c) criar mais duas entidades, Funcionário e Telefone, relacionando todas elas com cardinalidade 1:n, 
com o lado n na entidade Departamento. 
d) eliminar os campos Matrícula do Funcionário, Nome do Funcionário e Telefone do Funcionário, já 
que estes campos são os únicos que não contém dados do departamento, mas sim do funcionário. 
e) aplicar a segunda forma normal (2FN), que requer que todos os valores de atributos em uma 
entidade sejam atômicos, eliminando grupos repetidos e colocando-os cada um em uma entidade 
separada. 
Comentário: Analisando a questão acima podemos começar tentando supor quais são as 
dependências funcionais possíveis dentro do conjunto de atributos listados. Podemos perceber 
claramente dois determinantes principais Código do Departamento e Matrícula do 
Funcionário. 
Código do Departamento → Nome do Departamento, Telefone do Departamento 
Matrícula do Funcionário → Nome do Funcionário, Telefone do Funcionário, Número da CTPS 
CTPS é o número da carteira de trabalho e previdência social. 
Vejam que a normalização em tabelas deve partir desta separação, caso contrário teremos as 
informações de departamento presentes em todos os funcionários cadastrados. 
Sobre as alternativas que temos como possíveis para a resposta, dado que a entidade definida 
no enunciado da questão é a entidade Departamento, temos que separar os atributos que não 
fazem sentido estar presente nesta entidade e coloca-los em outra entidade, no caso 
Funcionario. Essa ideia está descrita na alternativa B, mas temos uma ressalva a fazer. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 126 
160 
Precisamos aplicar a segunda forma normal e não apenas a primeira, como está descrito na 
alternativa. 
A primeira forma normal trata de eliminar atributos compostos e multivalorados. Se logo no 
enunciado, já nos é informado que telefone não é um atributo multivalorado, não teríamos 
problema com a 1FN na tabela Departamento original. 
Já a definição da 2FN diz que não deve existir dependência parcial. Acredito que fosse possível, 
portanto, requerer a anulação da questão. Contudo o gabarito persistiu e nossa resposta, 
mesmo que imprecisa pode ser vista na alternativa B. 
Gabarito: B 
 
56. BANCA: FCC ANO: 2016 ÓRGÃO: TRT - 14ª REGIÃO (RO E AC) PROVA: TÉCNICO JUDICIÁRIO - 
TECNOLOGIA DA INFORMAÇÃO 
[31] Considere as tabelas TipoProduto e Produto, abaixo, em um banco de dados adequadamente 
normalizado. 
 
É possível concluir corretamente que 
a) o produto de Código 30 na tabela Produto deveria receber em CódigoDoTipo o valor 3, 
considerando os valores atuais na tabela TipoProduto. 
b) os campos Código e Descrição, na tabela TipoProduto, precisam ser modificados para CódigoTipo 
e DescriçãoTipo, pois já existe Código e Descrição na tabela Produto. 
c) as tabelas Produto e TipoProduto possuem um relacionamento do tipo m:n. 
d) o Código, na tabela Produto, deve ser incrementado obrigatoriamente em 10. 
e) o CódigoDoTipo na tabela Produto é chave estrangeira, pois estabelece uma ligação com a chave 
primária Código da tabela TipoProduto. 
Comentário: Observem que não existe código de produto 3, logo a alternativa a) está errada. 
Os nomes dentro de uma tabela devem ser únicos. Contudo, outra tabela pode ter o mesmo 
nome de atributo. É importante lembrar que o full qualified name de um atributo é composto 
pelo nome do esquema + nome da tabela + nome do atrituto. Logo, dois atributos com mesmo 
nome em tabelas diferentes terão qualificadores distintos. Logo, a alternativa b) está errada. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 127 
160 
As tabelas tipo produto e produto tem um relacionamento 1:N. Afinal de contas, cada produto 
tem apenas 1 códigoDoTipo. Sendo assim, a alternativa c) também está incorreta. Já a 
alternativa d) é esdrúxula, não faz nenhum sentido somarmos 10 ao código do produto 
OBRIGATORIAMENTE. Veja que o fato deste padrão está presente nas linhas não quer dizer 
que ele seja mandatório. 
Por fim, nos resta a alternativa e) que de fato está correta. Veja que o código do Tipo é chave 
estrangeira na tabela Produto. 
Gabarito: E 
 
57. BANCA: FCC ANO: 2016 ÓRGÃO: TRT - 23ª REGIÃO (MT) PROVA: TÉCNICO JUDICIÁRIO - 
TECNOLOGIA DA INFORMAÇÃO 
[29] Atenção: Para responder a questão, considere a informação abaixo. 
Um Técnico está participando da modelagem de um banco de dados utilizando o Modelo Entidade-
Relacionamento − MER e se deparou, dentre outras, com a entidade Processo, que contém os 
seguintes atributos: 
NumeroProcesso − inteiro (PK) 
DigitoProcesso − inteiro (PK) 
AnoProcesso − inteiro (PK) 
NumeroOABAdvogadoProcesso − cadeia de caracteres 
NomeAdvogadoProcesso − cadeia de caracteres 
NumeroOrgaoJudiciarioProcesso − inteiro (FK) 
NumeroTribunal − inteiro (FK) 
NumeroUnidadeOrigemProcesso − inteiro (FK) 
Considerando as regras para o desenvolvimento do MER normalizado, o Técnico deve concluir 
corretamente que um atributo que NÃO pode estar na entidade Processo é o 
a) NomeAdvogadoProcesso. 
b) AnoProcesso. 
c) NumeroOrgaoJudiciarioProcesso. 
d) NumeroTribunal. 
e) NumeroUnidadeOrigemProcesso. 
Comentário: Primeira coisa que temos que ter em mente é que, quando a banca fala em 
modelo normalizado, ela está se referindo a 3FN. Sendo assim,temos que analisar os atributos 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 128 
160 
e suas dependências funcionais. Vejam que não temos nenhum atributo composto ou 
multivalorado. Logo não temos problemas com a primeira forma normal (1FN). 
A próxima etapa é verificar se a chave primária é composta. Vejam que temos uma chave 
composta por 3 atributos: NumeroProcesso, DigitoProcesso, AnoProcesso. Observe que todos 
os atributos são plenamente dependentes da chave primária. Logo, não temos problema com 
a segunda forma normal. 
Agora vamos analisar se existem problemas com a terceira foram normal. Veja que 
NumeroOABAdvogadoProcesso determina NomeAdvogadoProcesso. Sabemos que 
NumeroOABAdvogadoProcesso é determinado pela chave primária. Logo, verificamos uma 
dependência funcional transitiva. Isso deve ser evitado para que a terceira forma normal seja 
válida. Logo, o atributo NomeAdvogadoProcesso não pode estar presente nesta tabela. Sendo 
a alternativa A nossa resposta. 
Gabarito: A 
 
58. BANCA: FCC ANO: 2016 ÓRGÃO: TRT - 23ª REGIÃO (MT) PROVA: ANALISTA JUDICIÁRIO – 
TECNOLOGIA DA INFORMAÇÃO 
[29] Um Analista está desenvolvendo um Modelo Entidade-Relacionamento do banco de dados de 
um tribunal sob uma perspectiva lógica e parte do modelo é formado pelas duas entidades abaixo, 
relacionadas com cardinalidade n:m. 
A entidade Processo contém os atributos: 
− NuM_Seq (número sequencial do processo por unidade de origem) − valor inteiro − (PK). 
− Dig (dígito verificador) − valor inteiro − (PK). 
− Ano (ano do ajuizamento) − valor inteiro− (PK). 
− Org (órgão ou segmento do Poder Judiciário, sendo 5 o correspondente à Justiça do Trabalho) − 
valor inteiro. 
− Tribunal (tribunal do segmento do Poder Judiciário, sendo 23 para o TRT da 23ª Região) − valor 
inteiro (FK). 
− Origem (unidade de origem do processo, sendo 4 zeros para o TRT) − valor inteiro. 
A entidade Advogado contém os atributos: 
− Num_OAB (número da OAB) − cadeia de caracteres− primary key. 
− Nome (nome do advogado) − cadeia de caracteres. 
− Telefone (telefone residencial e comercial) − cadeia de caracteres. 
Considerando que Advogado acompanha Processo, 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 129 
160 
a) o atributo Num_OAB precisa aparecer também na entidade Processo, como chave estrangeira, 
para garantir a integridade referencial entre os dados. 
b) o relacionamento não pode ser n:m, pois em cada Processo não se pode referenciar mais do que 
um Advogado para cada uma das partes, logo, trata-se de um relacionamento 1:n. 
c) o atributo Tribunal não pode ser chave estrangeira na entidade Processo, pois dos Tribunais não 
há necessidade de se cadastrar nada além do número. 
d) na implementação das tabelas, o relacionamento n:m deverá ser dividido em duas relações 1:n e 
uma nova tabela deverá ser criada para representar o relacionamento. 
e) como a relação é n:m, os atributos chave primária da entidade Processo devem aparecer na 
entidade Advogado como chave estrangeira e vice-versa. 
Comentário: Vejam que no modelo entidade-relacionamento descrito no enunciado o 
relacionamento entre Advogado e Processo é N:M. Desta forma, precisamos, ao passar para o 
modelo relacional, criarmos uma tabela de ligação para associar as instâncias destas relações. 
Nesta tabela teremos como atributos a chave primária de Advogado e a chame primária de 
Processo. Se tivéssemos algum atributo associado ao relacionamento, ele também apareceria 
nesta relação (Adgovado_Processo). 
Agora, observem que, quando olhamos isoladamente o relacionamento entre Advogado e 
Advogado_Processso, temos um relacionamento 1:N. Assim, uma linha de Advogado_Processo 
vai se relacionar com apenas um advogado. Para o outro lado, a ideia permanece, só que desta 
vez teremos apenas 1 processo. Isso é o que está descrito na alternativa D: 
“na implementação das tabelas, o relacionamento n:m deverá ser dividido em duas relações 
1:n e uma nova tabela deverá ser criada para representar o relacionamento.” Sendo, está a 
nossa resposta. 
Gabarito: D 
 
59. BANCA: FCC ANO: 2014 ÓRGÃO: TJ-AP PROVA: ANALISTA JUDICIÁRIO - DESENVOLVIMENTO DE 
SISTEMAS 
Uma Forma Normal (FN) é uma regra que deve ser obedecida por uma tabela para ser considerada 
bem projetada. As descrições a seguir são de tabelas em Formas Normais. 
I. A tabela não contém dependências transitivas, ou seja, as colunas que não sejam chave primária 
não dependem funcionalmente de outras colunas ou combinação de colunas que não sejam chave 
primária. 
II. A tabela não contém dependências parciais, ou seja, cada coluna não chave depende da chave 
primária completa e não apenas de parte dela. 
Os itens I e II descrevem, respectivamente, regras referentes à 
A 4FN e 2FN. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 130 
160 
B 2FN e 3FN. 
C 3FN e 2FN. 
D 1FN e 3FN. 
E 3FN e 4FN. 
Comentário: Pelas definições, que já tratamos na aula e em questões anteriores, as alternativas 
I e II estão associadas respetivamente a 3FN e 2FN. Vejam que a sequência da associação tenta 
levar você a confundir entre as alternativas B e C. Prestem bastante atenção para não cair 
nestas pegadinhas na hora da prova. 
Gabarito: C. 
 
60. BANCA: FCC ANO: 2013 ÓRGÃO: MPE-MA PROVA: ANALISTA JUDICIÁRIO - BANCO DE DADOS 
Em um banco de dados relacional, a atividade de normalizar suas tabelas tem como objetivo 
A gerar os triggers especificados para o banco de dados. 
B eliminar, ou pelo menos diminuir redundâncias de dados desnecessárias nessas tabelas. 
C impedir o acesso ao banco de dados, por parte de usuários desconhecidos. 
D compilar todas as funções inseridas no banco de dados. 
E preparar todas as tabelas do banco de dados para um backup completo. 
Comentário. Vejam que a reposta bate completamente com a definição de normalização. Seus 
principais objetivos são reduzir a redundância do banco de dados e as anomalias de 
atualização. Falaremos mais sobre normalização na aula de modelo relacional. 
Gabarito: B. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 131 
160 
QUESTÕES FCC SEM COMENTÁRIO 
Tecnologia da Informação aplicada à Auditoria Tributária 
Atenção: Para responder às questões de números 61 a 68, considere as informações abaixo. 
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. 
 
Após criar o modelo, implementou o banco de dados em um Sistema de Gerenciamento de 
Banco de Dados, criou as tabelas e cadastrou as seguintes informações: 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 132 
160 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 61. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 133 
160 
Considere que o Auditor digitouum comando para inserir os valores abaixo na tabela 
ItemPedido. 
idItePed qtdItePed idPed idPro 
2 500 7 14 
A mensagem correta que traduzirá o resultado da operação é 
(A) you have an error in your SQL syntax. 
(B) out of range value for column 'qtdItePed'. 
(C) cannot add a child row: a foreign key constraint fails. 
(D) duplicate entry '2-7' for key 'PRIMARY'. 
(E) register successfully - 1 row(s) affected. 
2. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 62. 
No modelo apresentado a entidade ItemPedido 
(A) possui chave primária composta, mas não possui chave estrangeira, logo, não garante 
integridade referencial. 
(B) possui uma chave primária composta pelos atributos idItePed e idPed, sendo que os 
atributos qtdItePed e idPro possuem dependência funcional completa com relação à chave 
primária. 
(C) deveria conter o campo PreUniPro, pois o preço unitário do produto deve ser incluído em 
cada item do pedido. 
(D) está relacionada com as entidades Pedido e Produto usando a notação Integrated 
DEFinition for Information Modelling − IDEF1X. 
(E) possui relação com cardinalidade n:n com a entidade Produto e 1:n com a entidade Pedido. 
3. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 63. 
O Auditor tentou incluir os dados abaixo na tabela Pedido. 
idPed dataPed idCli 
13 2018-07-22 12 
Ao executar a operação de inclusão, ocorreu um erro porque 
(A) já existe um pedido criado para o cliente 12. 
(B) não existe um pedido cadastrado com id 13. 
(C) não há um cliente com id 12 cadastrado na tabela Cliente. 
(D) já existe um pedido cadastrado com id 13. 
(E) a data cadastrada não existe, já que o formato correto é dd/mm/yyyy. 
4. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 64. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 134 
160 
Se na entidade ItemPedido fosse adicionado o atributo valorTotalItem e nesse atributo fosse 
armazenado o resultado da multiplicação do valor contido no atributo qtdItePed da entidade 
ItemPedido pelo valor contido no atributo PreUniPro da entidade Produto, a entidade 
ItemPedido violaria 
(A) todas as formas normais. 
(B) as regras de integridade referencial. 
(C) a terceira forma normal (3FN). 
(D) a segunda forma normal (2FN). 
(E) a primeira forma normal (1FN). 
5. Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Cargo: Auditoria e Fiscalização Questão: 65. 
Considere e avalie as asserções a seguir e a relação proposta entre elas. 
I. O relacionamento entre as entidades Pedido e ItemPedido é um relacionamento identificado 
PORQUE 
II. idPed, que é chave estrangeira na entidade ItemPedido, faz parte da chave primária desta 
entidade. 
É correto afirmar que 
(A) a primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa. 
(B) tanto a primeira quanto a segunda são proposições falsas. 
(C) as duas asserções são proposições verdadeiras, mas a segunda não é justificativa correta da 
primeira. 
(D) a primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira. 
(E) as duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da 
primeira. 
 
6. Ano: 2018 Banca: FCC Órgão: DPE-AM Cargo: Analista Área: Banco de Sistemas Questão: 41. 
Considere que um Analista de Sistemas está modelando um banco de dados relacional de um 
escritório de Advocacia e precisa definir a tabela Consulta, que liga as tabelas Advogado e Cliente. 
Na tabela Consulta foram definidos os campos 
abaixo. 
OAB_Advogado – Primary Key 
ID_Cliente – Primary Key 
Data_Hora_Consulta 
Parecer_Do_Advogado 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 135 
160 
Especialidade_Do_Advogado 
A chave primária é composta pelos campos OAB_Advogado e ID_Cliente. Cada Advogado que 
trabalha no escritório atua em uma única especialidade (direito penal, civil, trabalhista etc.) e, na 
consulta, emite um parecer exclusivo para cada cliente atendido. Nestas condições, é correto afirmar 
que 
(A) há um problema de dependência funcional parcial, pois o campo Parecer_Do_Advogado é 
dependente apenas do campo OAB_Advogado, que é parte da chave primária. 
(B) a tabela Consulta está correta e adequadamente normalizada de acordo com a primeira, segunda 
e terceira formas normais. 
(C) há um problema de dependência órfã, pois o campo Data_Hora_Consulta deveria ser 
dependente do ID da consulta, campo que está faltando na tabela. 
(D) todos os atributos não chave dependem integralmente da chave primária composta, 
demostrando que a tabela Consulta está na quarta forma normal. 
(E) há um problema de dependência funcional parcial, pois o campo Especialidade_Do_Advogado é 
dependente apenas do campo OAB_Advogado, que é parte da chave primária. 
 
7. Ano: 2018 Banca: FCC Órgão: DPE-AM Cargo: Analista Área: Banco de Sistemas Questão: 42 
42. Na tabela abaixo, OAB_Advogado e ID_Cliente fazem parte da chave primária composta da 
tabela e Valor_Total_Honorario é resultado da aplicação do Percentual_De_Honorario sobre 
Valor_Da_Causa. 
Esta tabela 
(A) não está na primeira forma normal porque possui dependência funcional transitiva do campo 
ID_Cliente em relação ao campo OAB_Advogado. 
(B) cumpre todas as regras de normalização, já que todos os campos não chave são integralmente 
dependentes da chave primária composta. 
(C) não está na terceira forma normal porque possui um campo resultante de cálculo envolvendo 
outros dois campos que não fazem parte da chave primária. 
(D) respeita as boas práticas de modelagem e normalização, entretanto, para facilitar a busca de 
dados, a chave primária deveria ser composta apenas pelo campo OAB_Advogado. 
(E) não está na terceira forma normal porque possui tabelas aninhadas, ou seja, a tabela precisará 
ser dividida em duas tabelas relacionadas. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 136 
160 
 
8. Ano: 2018 Banca: FCC Órgão: TRT-06 Cargo: Analista Judiciário Área: Tecnologia da Informação 
Questão: 33 
Considere hipoteticamente a existência de empresas que terceirizam o fornecimento de Recursos 
Humanos a outras empresas. Cada funcionário pode ser cadastrado em várias dessas empresas 
terceirizadas, nos mesmos cargos ou em cargos diferentes. Um modelo abstrato de dados dessa 
relação entre Empresa_Terceirizada_RH e Funcionario é mostrado abaixo. 
 
Para um Analista especializado em Tecnologia da Informação implementar o modelo mostrado na 
figura, em um Sistema Gerenciado de Banco de Dados relacional, terá que 
(A) criar uma tabela de ligação entre Empresa_Terceirizada_RH e Funcionario, fragmentando o 
relacionamento n:m em dois relacionamentos 1:1, já que não é possível implementar a relação n:m 
em bancos de dados relacionais. 
(B) excluir o atributo cargoFuncionario, pois cada funcionário poderá ter um cargo diferente em cada 
empresa terceirizada onde se cadastrar. 
(C) utilizar a linguagem SQL, adicionando o parâmetro CROSS REFERENCES à instrução CREATE TABLE 
na criação de ambas as tabelas para estabelecer a relação n:m entre elas. 
(D) excluir o campo cargoFuncionario da tabela Funcionario e inserir na tabela 
Empresa_Terceirizada_RH, pois o cargo é cadastrado quando o funcionário faz a inscrição na 
empresa terceirizada. 
(E) criar uma tabela de ligação entre Empresa_Terceirizada_RH e Funcionario, fragmentando o 
relacionamento n:m em dois relacionamentos1:n e colocando o campo cargoFuncionario como 
atributo simples nessa tabela de ligação. 
 
9. Ano: 2017 Banca: FCC Órgão: ARTESP Cargo: Especialista em Regulação de Transporte - 
Tecnologia da Informação Questão: 73. 
73. Na modelagem de um banco de dados relacional há diversos aspectos a serem considerados. 
Dentre tais aspectos, é correto afirmar que 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 137 
160 
(A) a função exercida por um conjunto de entidades ligado a um conjunto de relacionamentos 
denomina-se gatilho. 
(B) uma modelagem de um banco de dados relacional suporta um número máximo teórico de 
conjuntos de entidades, não superior a 30. 
(C) as propriedades descritivas de um conjunto de entidades são denominadas de atributos. 
(D) conjuntos de relacionamentos não admitem atributos do tipo descritivo. 
(E) um conjunto de relacionamentos recursivo liga dois ou mais conjuntos de entidades. 
 
10. Ano: 2017 Banca: FCC Órgão: ARTESP Cargo: Especialista em Regulação de Transporte - 
Tecnologia da Informação Questão: 74. 
74. Com o intuito de verificar se uma determinada relação R de um banco de dados relacional atende 
a segunda forma normal, deve-se verificar se 
(A) atributos que não façam parte de qualquer chave candidata de R são total e funcionalmente 
dependentes da chave primária de R. 
(B) o domínio de todos os atributos de R comportam valores considerados múltiplos. 
(C) todos os atributos de R são do tipo literal ou numérico. 
(D) a relação R tem uma chave primária composta por dois ou mais atributos. 
(E) o número de atributos da relação R é múltiplo de 2. 
 
11. Ano: 2017 Banca: FCC Órgão: TRT-11 Cargo: Analista Judiciário de TI – Q. 44 
Considere o modelo de dados abaixo. 
 
Na relação entre as entidades Advogado e Processo um advogado poderá atuar em diversos 
processos, tanto como advogado de defesa como de acusação. Assim, cada processo terá, pelo 
menos, dois advogados. Com base nesse modelo, na implementação das tabelas do banco de dados 
em um Sistema de Gerenciamento de Banco de Dados relacional, 
(A) será necessária a criação de uma tabela entre Advogado e Processo e o relacionamento N:N dará 
lugar a dois relacionamentos 1:N. 
(B) a chave primária da tabela Processo deverá ser chave estrangeira na tabela Advogado. 
(C) a chave primária da tabela Advogado deverá ser chave estrangeira na tabela Processo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 138 
160 
(D) ambas as tabelas (Processo e Advogado) deverão ter chave primária composta. 
(E) a tabela Advogado deverá ter um campo para especificar o tipo de atuação do advogado em cada 
processo (defesa ou acusação). 
 
12. Ano: 2017 Banca: FCC Órgão: TRE-SP Cargo: Técnico Judiciário de TI – Q. 57 
Considere as entidades abaixo que são integrantes de um modelo de banco de dados relacional. 
 
Analisando-se as entidades, tem-se que 
(A) estas entidades estabelecem dois relacionamentos n:m não-identificados (non-Identifying). 
(B) se for incluído um atributo pontuacao, ele terá que ser incluído na entidade Candidato. 
(C) se for incluído o atributo dataInscricaoCandidato, ele terá que ser incluído na entidade 
Candidato_Concurso. 
(D) para que a entidade Candidato esteja na 1a forma normal, a entidade Candidato_Concurso 
precisa estar normalizada. 
(E) a entidade Candidato_Concurso nunca estará na 2a forma normal porque ela possui chave 
primária composta 
 
13. Ano: 2016 Banca: FCC Órgão: TRE-SP Cargo: Analista Judiciário de TI – Q. 59. 
Considere as informações abaixo. 
PROCESSO (Num_Processo, [Titulo_Eleitor, Nome_Eleitor, Zona_Eleitoral_Eleitor, 
Secao_Eleitoral_Eleitor, Status_Eleitor_no_Processo], 
Data_Criacao_Processo, Data_Solucao_Processo). 
Sabe-se que os seguintes requisitos se aplicam: 
− Um Eleitor pode ser citado em um ou mais processos. 
− Um Processo pode citar um ou mais eleitores, portanto, os dados de Eleitor, entre chaves na tabela 
(ou relação) acima, podem ser integrantes de um grupo de repetição. 
− Os atributos grifados são chaves-primárias de seus respectivos grupos de atributos, ou seja, 
Num_Processo é chave dos dados de processo e Titulo_Eleitor é chave dos atributos de eleitor. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 139 
160 
− O Status_Eleitor_no_Processo (ex. Ativo, Inativo, Desistente) pode ser diferente nos processos nos 
quais é citado, ou seja, o mesmo eleitor pode ter, por exemplo, o status de Desistente em um 
processo, mas Ativo em outro). 
Após a aplicação da 3FN, a situação ficou como segue: 
− PROCESSO (Num_Processo, Data_Criacao_Processo, Data_Solucao_Processo) 
− ELEITOR (Titulo_Eleitor, Nome_Eleitor, Zona_Eleitoral_Eleitor, Secao_Eleitoral_Eleitor) 
− CITAÇÃO (Num_Processo, Titulo_Eleitor, Zona_Eleitoral_Eleitor, Status_Eleitor_no_Processo) 
Os atributos em negrito são as chaves identificadoras das tabelas (ou relações). 
Um experiente Analista de Sistemas analisou a situação e concluiu, corretamente, que a 
normalização 
(A) deve manter o atributo Num Processo em ELEITOR, para ficar integralmente correta. 
(B) deve incluir o atributo Data_Solucao_Processo na CITAÇÃO, para ficar integralmente correta. 
(C) está integralmente correta. 
(D) deve retirar o atributo Zona_Eleitoral_Eleitor da CITAÇÃO, para ficar integralmente correta. 
(E) deve incluir o atributo Status_Eleitor_no_Processo em PROCESSO, para ficar integralmente 
correta. 
 
14. Ano: 2017 Banca: FCC Órgão: TRE-SP Cargo: Técnico Judiciário de TI – Operação de 
computadores - Q. 57 
57. Um Técnico do TRE-SP deparou-se, hipoteticamente, com o seguinte problema: 
Um banco de dados relacional, modificado por outro profissional, começou a apresentar anomalias. 
As entidades conceituais que embasaram o banco, originalmente, eram Processo e Cidadão. Os 
requisitos especificavam que o relacionamento entre tais entidades atendesse ao fato de que um 
processo poderia relacionar-se com um único cidadão e um cidadão, claramente, poderia relacionar-
se com mais de um processo. Isto para o caso do relacionamento denominado Autoria. Já, em outro 
relacionamento entre as mesmas entidades, denominado Participação, o processo poderia ter a 
participação de mais de um cidadão e cada um deles também poderia participar de mais de um 
processo. Ora, após a modificação do banco, quando os usuários tentaram entrar com mais de um 
cidadão na atualização de participação de um determinado processo, apesar de na tela ter o espaço 
para tal, o programa apresentava erro de consistência, não aceitando mais de um cidadão 
participante. Nesse caso, especificamente, ocorreu a implementação do relacionamento 
(A) Participação (Processo Participação de Cidadão, nesta ordem) como n:m. 
(B) Participação (Processo Participação de Cidadão, nesta ordem) como n:1. 
(C) Autoria (Processo Autoria de Cidadão, nesta ordem) como n:m. 
(D) Participação (Processo Participação de Cidadão, nesta ordem) como 1:n. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 140 
160 
(E) Autoria (Processo Autoria de Cidadão, nesta ordem) como n:1. 
 
 
15. BANCA: FCC ANO: 2016 ÓRGÃO: PREFEITURA DE TERESINA - PI 
PROVA: ANALISTA TECNOLÓGICO - ANALISTA DE SUPORTE TÉCNICO 
[29] Em um banco de dados relacional existe a figura do valor nulo, ou seja, atributos de um conjuntode entidades podem ter esse valor. O valor nulo indica 
a) ausência de valor para um atributo de uma entidade de um conjunto de entidades. 
b) que em sua composição deve constar o caractere %. 
c) existência de múltiplos valores para um atributo de uma entidade de um conjunto de entidades. 
d) que o conteúdo do atributo de uma entidade de um conjunto de entidades foi preenchido com o 
valor 0 (zero). 
e) que em sua composição deve constar a sequência de caracteres //. 
 
 
16. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-SP PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[56] Durante a análise das características típicas de um Sistema Gerenciador de Bancos de Dados 
Relacional – SGBDR, um Analista de Sistemas verifica: 
I. Oferece suporte a várias linguagens sem a necessidade de uma sintaxe definida em quaisquer uma 
delas no âmbito de Data Manipulation Language − DML e Data Definition Language − DDL, porém 
deve ter, pelo menos, uma das linguagens com sintaxe restritiva e bem definida no âmbito de 
Transaction Control Language − TCL e Data Control Language − DCL. 
II. A Inserção, a atualização e a eliminação é de alto nível, ou seja, a capacidade de manipular a 
relação base ou relações derivadas como um operador único é aplicável não somente à recuperação 
de dados, mas também à inserção, alteração e eliminação de dados. 
III. Representa a descrição do Banco de Dados no nível físico na forma de dados em tabelas, 
permitindo que usuários autorizados apliquem formas distintas de manipular os dados nessas 
tabelas. 
Estão corretas as características que constam APENAS em 
a) I. 
b) I e II. 
c) II. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 141 
160 
d) II e III. 
e) III. 
 
17. BANCA: FCC ANO: 2017 ÓRGÃO: TRF - 5ª REGIÃO PROVA: ANALISTA JUDICIÁRIO - 
INFORMÁTICA 
[44] Considere que a tabela abaixo para controle de funcionários, possui o campo registro como 
chave primária e que o campo salario_liquido é resultante da subtração do desconto sobre o 
salario_bruto. 
 
 Esta tabela 
a) está na segunda forma normal (2FN) porque possui chave primária simples da qual dependem 
todos os demais atributos. 
b) possui uma anomalia de inclusão, já que não será possível cadastrar um valor do campo 
salario_liquido. 
c) atende corretamente a todas as principais formas normais (1FN, 2FN e 3FN). 
d) não está na terceira forma normal (3FN) porque possui um campo calculado. 
e) não está na primeira forma normal (1FN), pois salario_liquido não é dependente da chave 
primária. 
 
18. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[31] O modelo relacional é um modelo formal, baseado na teoria matemática das relações, que 
representa os dados no banco de dados em uma coleção de tabelas relacionadas. Utiliza o conceito 
de 
a) herança, ou referência a objetos do tipo tabela, de forma semelhante ao que ocorre com as 
classes em modelos orientados a objetos. 
b) tuplas, que lidam com qualquer estrutura de dados existente em aplicações criadas em linguagens 
de programação orientadas a objetos. 
c) colunas (ou campos), podendo conter valores inteiros, reais, literais e de referência, não estando 
limitadas quanto aos tipos de dados. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 142 
160 
d) stored procedures, que são estruturas semelhantes aos métodos dos modelos orientados a 
objetos, porém, os procedures não são limitados como os métodos. 
e) integridade referencial, onde o conteúdo de um campo chave estrangeira de uma relação precisa 
coincidir com um valor que esteja contido no campo que é chave primária na sua tabela pai. 
 
19. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[32] Considere uma relação de trabalho flexível e hipotética, onde cada funcionário, que possui uma 
única Carteira de Trabalho e Previdência Social, pode trabalhar em diversas empresas ao mesmo 
tempo, e estas empresas podem manter inúmeros funcionários. Nessa relação estabelecida de 
forma correta em um Sistema Gerenciador de Banco de Dados Relacional, considere que a chave 
primária da tabela funcionario é matriculaFuncionario, da tabela empresa é idEmpresa e da tabela 
empresa_funcionario é uma composição de matriculaFuncionario e idEmpresa. Um Analista de 
Sistemas infringirá as regras da segunda forma normal (2FN) se colocar na tabela 
empresa_funcionario o campo 
a) cargo. 
b) salario. 
c) cargaHorariaMensal. 
d) regrasDeTrabalho. 
e) numeroCarteiraTrabalho. 
 
20. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[54] Considere, por hipótese, que um Analista de Sistemas está trabalhando no projeto conceitual 
de um sistema de controle de processos compartilhado entre tribunais, o qual futuramente será 
projetado para ser processado em um modelo de banco de dados relacional normalizado. O Analista 
levantou os seguintes requisitos: 
− A entidade tribunal deverá ser identificada de forma unívoca pelo atributo identidade do tribunal 
que será a chave primária; A entidade processo terá sua chave primária composta por um número 
sequencial de 1 a n mais a identidade do tribunal ao qual está vinculado. 
O motivo da incorporação da identidade do tribunal na chave primária de processo bem como o tipo 
de relacionamento entre as entidades tribunal e processo são, respectivamente, a 
a) manutenção da unicidade da identidade do tribunal; relacionamento de dependência (tribunal é 
entidade fraca de processo). 
b) necessidade de se manter, em uma única tabela, os tribunais e os processos; relacionamento 
unitário. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 143 
160 
c) necessidade de se manter um pseudo-relacionamento entre tribunal e processo; relacionamento 
ternário (tribunal + tribunal e processo). 
d) manutenção da unicidade da identidade do processo; relacionamento de dependência (tribunal 
é entidade fraca de processo). 
e) manutenção da unicidade da identidade do processo; relacionamento de dependência (processo 
é entidade fraca de tribunal). 
 
21. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE SISTEMAS 
[55] Considere, por hipótese, os requisitos abaixo, levantados durante a modelagem de dados: 
I. A entidade Empregado exerce dois papéis: Gerente e Gerenciado. Cada empregado tem um só 
gerente e um gerente chefia diversos empregados. 
II. Um empregado (entidade Empregado) ocupa somente um cargo (entidade Cargo) que também 
pode ser ocupado por outros empregados. 
III. Um departamento (entidade Departamento) aloca diversos empregados (entidade Empregado). 
Um empregado só pode ser alocado em um único departamento. 
IV. Os atributos identificadores das entidades Empregado, Cargo e Departamento são, 
respectivamente, Matrícula, Código do Cargo e Código do Departamento. 
Em um modelo normalizado, são chaves estrangeiras em I, II e III, respectivamente, 
a) Matrícula (do gerenciado), Código do Cargo e Código do Departamento. 
b) Matrícula (do gerente), Matrícula e Código do Departamento. 
c) Matrícula (do gerente), Código do Cargo e Código do Departamento. 
d) Matrícula (do gerenciado), Matrícula e Matrícula. 
e) Matrícula (do gerenciado), Código do Cargo e Matrícula. 
 
22. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: TÉCNICO JUDICIÁRIO – PROGRAMAÇÃO 
[61] Considere o diagrama entidade-relacionamento abaixo. 
 
As chaves primárias de Cidadão e Processo são pk_cidadaoe pk_processo, respectivamente. O 
relacionamento Consulta possui a cardinalidade 0,n com n>1 em ambos os lados. 
Em um banco de dados relacional normalizado, estará correta a criação da tabela 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 144 
160 
a) Processo tendo como chave estrangeira pk_cidadao e Consulta tendo como chave estrangeira 
pk_processo. 
b) Cidadão tendo como chave estrangeira pk_processo e Consulta tendo como chave estrangeira 
pk_cidadao. 
c) Consulta tendo pk_processo como chave primária e Cidadão tendo pk_processo como chave 
estrangeira. 
d) Consulta tendo pk_cidadao como chave primária e Processo tendo pk_cidadao como chave 
estrangeira. 
e) Consulta tendo como chave primária pk_cidadao mais pk_processo. 
 
23. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: TÉCNICO JUDICIÁRIO – PROGRAMAÇÃO 
[64] Considere as tabelas relacionais abaixo. 
 
Considerando que os elementos que identificam de forma única e inequívoca um cidadão e um 
processo são, respectivamente, CPF_Cidadao e Num_Processo e que a relação 
Tab_Rel_Processo_Cidadao entre Tab_Cidadao e Tab_Processo é de muitos para muitos, ou seja, 
um cidadão pode impetrar um ou mais processos e um processo pode ser impetrado por um ou mais 
cidadãos, as formas normais infringidas, respectivamente, nas três tabelas são: 
a) 1FN, 2FN e 3FN. 
b) 2FN, nenhuma e 3FN. 
c) 3FN, 1FN e nenhuma. 
d) nenhuma, 1FN e 2FN. 
e) nenhuma, nenhuma e 2FN. 
 
24. BANCA: FCC ANO: 2017 ÓRGÃO: TST PROVA: ANALISTA JUDICIÁRIO – SUPORTE EM 
TECNOLOGIA DA INFORMAÇÃO 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 145 
160 
[68] Em um Modelo Entidade-Relacionamento existem as entidades NotaFiscal e Produto que 
estabelecem uma relação n:m. Em um Sistema Gerenciador de Banco de Dados Relacional, um 
Analista de Suporte implementou a tabela de ligação ItemNotaFiscal entre as tabelas NotaFiscal e 
Produto, contendo os campos abaixo. 
NumeroNotaFiscal (chave primária, chave estrangeira) 
NumeroProduto (chave primária, chave estrangeira) 
Descricao 
Quantidade 
PrecoUnitario 
Uma anomalia existente na tabela ItemNotaFiscal, que infringe as regras de normalização, é a 
existência de 
a) atributos compostos ou derivados. 
b) dependência funcional parcial. 
c) dependência funcional transitiva indireta. 
d) atributos multivalorados. 
e) dependência funcional transitiva direta. 
 
25. BANCA: FCC ANO: 2017 ÓRGÃO: DPE-RS PROVA: ANALISTA – BANCO DE DADOS 
[32] O modelo relacional em banco de dados comporta o conceito de chaves primárias e de chaves 
candidatas, ambas incluindo a propriedade da unidade. Supondo K um conjunto de atributos da 
tabela T, K terá a propriedade da unicidade se 
a) o número de atributos que compõem K for igual a 1. 
b) comportar apenas 1 índice em seus atributos. 
c) houver apenas 1 atributo do tipo numérico em K. 
d) não houver duas tuplas de T com o mesmo valor para K. 
e) todos os atributos de K tiverem a mesma limitação em seus números de caracteres. 
 
26. BANCA: FCC ANO: 2017 ÓRGÃO: DPE-RS PROVA: ANALISTA – BANCO DE DADOS 
[36] Observou-se que uma tabela de um banco de dados relacional está na segunda forma normal 
pois, além de estar na primeira forma normal, 
a) existe um número par de atributos na chave primária da tabela. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 146 
160 
b) cada atributo não chave da tabela é dependente de todos os atributos da chave primária da 
tabela. 
c) todos atributos da tabela são atômicos (contêm exatamente um valor para cada atributo). 
d) os atributos da chave primária da tabela são do tipo numérico. 
e) os atributos não chave da tabela são mutuamente dependentes entre si. 
 
27. BANCA: FCC ANO: 2017 ÓRGÃO: DPE-RS PROVA: ANALISTA – BANCO DE DADOS 
[33] Em um banco de dados relacional, quando se faz a definição do domínio de um atributo, o 
objetivo é determinar 
a) o número máximo de atributos permitido para a tabela desse atributo. 
b) o número máximo de registros permitido para a tabela desse atributo. 
c) a regra de formação do nome desse atributo. 
d) o conjunto de valores permitido para cada atributo. 
e) as tabelas que podem utilizar tal atributo como chave estrangeira. 
 
28. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-PR PROVA: ANALISTA JUDICIÁRIO – ANÁLISE DE 
SISTEMAS 
[37] Considere a tabela ItemPedido abaixo, onde a chave primária é composta pelos campos 
NumeroPedido e NumeroItemPedido. 
 
É correto afirmar que 
a) para esta tabela estar na 2FN a chave primária não pode ser composta. 
b) NumeroPedido não pode conter valores repetidos, pois é parte da chave primária. 
c) para esta tabela estar na 3FN a coluna TotalPedido deve ser excluída. 
d) esta tabela está na 3FN porque não tem dependência transitiva de colunas. 
e) esta tabela está na 1FN porque a chave primária é composta. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 147 
160 
 
29. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-PR PROVA: TÉCNICO JUDICIÁRIO – PROGRAMAÇÃO DE 
SISTEMAS 
[40] Considere hipoteticamente que em um Tribunal cada Juiz conta com a ajuda de vários 
Assistentes, de acordo com o volume de processos que precisa analisar e julgar. Cada Assistente, por 
sua vez, auxilia vários Juízes, de acordo com a demanda de trabalho. Se Juiz e Assistente forem 
entidades de um modelo de dados relacional, a cardinalidade entre elas será n:m. Na criação das 
tabelas a partir do modelo, 
a) a chave primária da tabela Juiz será chave estrangeira na tabela Assistente e a chave primária da 
tabela Assistente será chave estrangeira na tabela Juiz. 
b) será necessário criar uma tabela de ligação entre Juiz e Assistente e o relacionamento n:m dará 
lugar a dois relacionamentos 1:n. 
c) será estabelecido um relacionamento bidirecional entre as tabelas Juiz e Assistente, com 
cardinalidade 1:1. 
d) para que a relação n:m seja mantida, as chaves primárias das tabelas Juiz e Assistente deverão ser 
compostas pelo Id do Juiz e pelo Id do Assistente. 
e) será necessário criar uma tabela de ligação entre Juiz e Assistente, gerando assim dois 
relacionamentos 1:1. 
 
30. BANCA: FCC ANO: 2017 ÓRGÃO: TRT - 24ª REGIÃO (MS) PROVA: TÉCNICO JUDICIÁRIO - 
TECNOLOGIA DA INFORMAÇÃO 
[43] Considere, hipoteticamente, uma relação de trabalho em que um funcionário pode trabalhar 
em várias empresas, sendo registrado em todas elas. Esta relação é representada na figura abaixo. 
 
Nesta relação, cada funcionário pode ocupar cargos diferentes em cada empresa onde trabalha 
recebendo, inclusive, salários diferentes por jornadas de trabalho variáveis. Nestas condições, 
quando o modelo for implementado em um Sistema Gerenciador de Banco de Dados relacional, 
a) se for incluído um campo salário este deverá ser colocado na tabela Funcionário. 
b) somente as tabelas Funcionário e Empresa serão criadas e relacionadas com cardinalidade n:n. 
c) o relacionamento n:n deverá ser desmembrado em dois relacionamentos 1:1, sendo Trabalha a 
entidade de ligação entre Funcionário e Empresa. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 148 
160 
d) se for incluídoum campo cargo este deverá ser colocado na tabela associativa identificada como 
Trabalha. 
e) se for incluído um campo CargaHoráriaMensal ele deverá ser colocado na tabela Empresa. 
 
31. BANCA: FCC ANO: 2017 ÓRGÃO: TRE-PR PROVA: TÉCNICO JUDICIÁRIO - OPERAÇÃO DE 
COMPUTADORES 
[33] Em uma empresa cada projeto é desenvolvido por vários funcionários e cada funcionário só 
pode participar de um projeto. Para controlar os funcionários alocados em cada projeto foi criada a 
tabela abaixo em um banco de dados. 
 
Considerando as regras de modelagem de bancos de dados relacionais, esta tabela 
a) está modelada corretamente, já que permite visualizar em que projeto cada funcionário está 
trabalhando e quantos funcionários estão alocados em cada projeto. 
b) não está correta, pois seria necessário definir uma chave primária composta pelos campos 
idProjeto e MatriculaFuncionario, já que há repetição de idProjeto em várias linhas. 
c) deve ser desmembrada em duas tabelas relacionadas com cardinalidade 1:n (Projeto e 
Funcionario), para evitar a repetição dos dados do projeto para cada funcionário que participa dele. 
d) não está adequadamente modelada, pois um mesmo funcionário pode participar de vários 
projetos ao mesmo tempo, contrariando as regras do modelo relacional. 
e) deve ser ampliada, incluindo-se outras informações sobre o projeto (como valor e descrição) e 
sobre os funcionários (como cargo e função). 
 
32. BANCA: FCC ANO: 2016 ÓRGÃO: PGE-MT PROVA: ANALISTA – ANALISE DE SISTEMAS 
[37] Considere um banco de dados cujo modelo Entidade-Relacionamento, em uma perspectiva 
lógica, possui duas entidades: processo e advogado relacionadas com cardinalidade n:m. Cada 
advogado pode atuar em diversos processos, hora como advogado de acusação, hora como 
advogado de defesa, o que é definido em um atributo tipo_atuacao. Cada processo poderá ter, 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 149 
160 
consequentemente, pelo menos dois advogados, um de defesa e um de acusação. Quando o modelo 
for implementado em um sistema gerenciador de banco de dados relacional, 
a) as duas entidades darão origem a duas tabelas e a relação n:m será implementada por um campo 
de ligação comum em ambas as tabelas. 
b) o campo tipo_atuacao será colocado na tabela advogado, pois o tipo de atuação é um atributo do 
advogado, que define a forma como ele atuará no processo. 
c) deverá ser criada uma tabela de ligação entre processo e advogado, originando duas relações com 
cardinalidade 1:1. O atributo tipo_atuacao será colocado nessa tabela. 
d) deverá ser criada uma tabela Atuação com um único campo, tipo_atuacao, já que o tipo da 
atuação do advogado pode ser diferente em cada processo que ele atua. 
e) deverá ser criada uma tabela de ligação entre processo e advogado, originando dois 
relacionamentos 1:n. O atributo tipo_atuacao será colocado nessa tabela. 
 
33. BANCA: FCC ANO: 2016 ÓRGÃO: AL-MS PROVA: TÉCNICO DE INFORMÁTICA 
[51] Para responder à questão, considere o modelo mostrado na imagem abaixo, oriundo de uma 
situação hipotética: 
 
 
Conclui-se, observando o modelo, que 
a) será necessário cadastrar, no mínimo, dois partidos com pelo menos um filiado cada. 
b) está sendo utilizada a notação IDEF1X para relacionar as duas entidades. 
c) se trata de um relacionamento 1:n não identificado. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 150 
160 
d) siglaPartido deveria fazer parte da chave primária na entidade Filiado. 
e) todo partido cadastrado precisará ter, no mínimo, um filiado cadastrado. 
 
34. BANCA: FCC ANO: 2016 ÓRGÃO: PREFEITURA DE TERESINA - PI 
PROVA: ANALISTA TECNOLÓGICO - ANALISTA DE SISTEMAS 
[29] Considere o modelo relacional: 
 
Após a criação das tabelas, foram cadastrados os seguintes registros: 
 
Sobre o modelo de dados relacional apresentado, considere: 
I. Usa a notação crow's foot para representar o grau, ou cardinalidade, do relacionamento entre as 
entidades Orgao e Obra. 
II. Para toda obra que for cadastrada será necessário inserir no campo siglaOrgao da entidade Obra 
um valor já cadastrado no campo siglaOrgao da entidade Orgao. 
III. Caso as entidades Orgao e Obra estabelecessem um relacionamento n:n, no momento da 
implementação das tabelas seria necessário criar uma tabela de ligação entre elas e desmembrar o 
relacionamento em dois relacionamentos 1:n. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 151 
160 
IV. O modelo não está normalizado, ou seja, os valores das colunas não serão atômicos quando 
forem cadastrados e haverá dependência funcional parcial na entidade Obra. 
Está correto o que se afirma APENAS em: 
a) II e III. 
b) I e IV. 
c) II, III e IV. 
d) I e III. 
e) II e IV. 
 
35. BANCA: FCC ANO: 2016 ÓRGÃO: PREFEITURA DE TERESINA - PI PROVA: TÉCNICO DE NÍVEL 
SUPERIOR - ANALISTA DE SISTEMAS 
[55] Durante o levantamento de requisitos um Analista de Sistemas identificou um relacionamento 
denominado Subordinação que relacionava um Órgão a outro da Prefeitura de Teresina como Órgão 
Subordinante (superior) e Órgão Subordinado. Esse relacionamento explicava a hierarquia 
administrativa entre órgãos. Desta forma, o Analista, durante a modelagem de dados, modelou 
corretamente Subordinação como 
a) relacionamento ternário. 
b) autorrelacionamento n:m. 
c) autorrelacionamento 1:n. 
d) relacionamento dependente. 
e) entidade nula. 
 
36. BANCA: FCC ANO: 2016 ÓRGÃO: COPERGÁS - PE PROVA: ANALISTA TECNOLOGIA DA 
INFORMAÇÃO 
[57] Considere as tabelas a seguir com seus respectivos campos. 
 
Deve-se verificar se há violação da segunda forma normal (2FN) SOMENTE nas tabelas: 
a) TabelaB e TabelaD. 
b) TabelaA e TabelaE. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 152 
160 
c) TabelaA, TabelaB e TabelaC. 
d) TabelaC e TabelaE. 
e) TabelaA, TabelaC e TabelaE. 
 
37. BANCA: FCC ANO: 2016 ÓRGÃO: TRF - 3ª REGIÃO PROVA: TÉCNICO JUDICIÁRIO - 
INFORMÁTICA 
[66] Para responder a questão, considere as informações abaixo. 
 
Se a tabela Processo for ligada a uma outra tabela em um relacionamento 1:n, sendo 1 processo 
para n da outra tabela, 
a) as colunas NumeroSeqProcesso, DigitoProcesso e AnoAjuizamentoProcesso terão que aparecer 
obrigatoriamente na outra tabela como parte da chave primária. 
b) será obrigatório que na outra tabela seja cadastrado, pelo menos, um registro para cada valor da 
chave primária da tabela Processo. 
c) a chave primária da outra tabela precisa, necessariamente, aparecer na tabela Processo, para que 
seja garantida a integridade referencial. 
d) as colunas NumeroSeqProcesso, DigitoProcesso e AnoAjuizamentoProcesso terão que aparecer 
na outra tabela, para haver integridade referencial. 
e) nem todos os registros cadastrados na outra tabela precisarão estar relacionados a algum 
processo existente na tabela Processo 
 
38. BANCA: FCC ANO: 2016 ÓRGÃO: TRF - 3ª REGIÃO PROVA: TÉCNICO JUDICIÁRIO - 
INFORMÁTICA 
[67] Uma entidade Departamento é composta pelos atributos abaixo. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579153 
160 
Código do Departamento 
Matrícula do Funcionário 
Nome do Departamento 
Nome do Funcionário 
Telefone do Departamento 
Telefone do Funcionário 
Número da CTPS 
Considerando-se que só poderá ser cadastrado um único número de telefone, tanto para os 
departamentos quanto para os funcionários, para que a entidade seja normalizada adequadamente, 
deve-se 
a) aplicar a segunda forma normal (2FN), de forma que todos os demais atributos sejam 
dependentes da chave primária, que deverá ser composta pelos atributos Código do Departamento 
e Matrícula do Funcionário. 
b) aplicar a primeira forma normal (1FN), colocando os atributos Matrícula do Funcionário, Nome 
do Funcionário, Telefone do Funcionário e Número da CTPS em uma entidade Funcionário 
relacionada adequadamente à entidade Departamento. 
c) criar mais duas entidades, Funcionário e Telefone, relacionando todas elas com cardinalidade 1:n, 
com o lado n na entidade Departamento. 
d) eliminar os campos Matrícula do Funcionário, Nome do Funcionário e Telefone do Funcionário, já 
que estes campos são os únicos que não contém dados do departamento, mas sim do funcionário. 
e) aplicar a segunda forma normal (2FN), que requer que todos os valores de atributos em uma 
entidade sejam atômicos, eliminando grupos repetidos e colocando-os cada um em uma entidade 
separada. 
 
39. BANCA: FCC ANO: 2016 ÓRGÃO: TRT - 14ª REGIÃO (RO E AC) PROVA: TÉCNICO JUDICIÁRIO - 
TECNOLOGIA DA INFORMAÇÃO 
[31] Considere as tabelas TipoProduto e Produto, abaixo, em um banco de dados adequadamente 
normalizado. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 154 
160 
É possível concluir corretamente que 
a) o produto de Código 30 na tabela Produto deveria receber em CódigoDoTipo o valor 3, 
considerando os valores atuais na tabela TipoProduto. 
b) os campos Código e Descrição, na tabela TipoProduto, precisam ser modificados para CódigoTipo 
e DescriçãoTipo, pois já existe Código e Descrição na tabela Produto. 
c) as tabelas Produto e TipoProduto possuem um relacionamento do tipo m:n. 
d) o Código, na tabela Produto, deve ser incrementado obrigatoriamente em 10. 
e) o CódigoDoTipo na tabela Produto é chave estrangeira, pois estabelece uma ligação com a chave 
primária Código da tabela TipoProduto. 
 
40. BANCA: FCC ANO: 2016 ÓRGÃO: TRT - 23ª REGIÃO (MT) PROVA: TÉCNICO JUDICIÁRIO - 
TECNOLOGIA DA INFORMAÇÃO 
[29] Atenção: Para responder a questão, considere a informação abaixo. 
Um Técnico está participando da modelagem de um banco de dados utilizando o Modelo Entidade-
Relacionamento − MER e se deparou, dentre outras, com a entidade Processo, que contém os 
seguintes atributos: 
NumeroProcesso − inteiro (PK) 
DigitoProcesso − inteiro (PK) 
AnoProcesso − inteiro (PK) 
NumeroOABAdvogadoProcesso − cadeia de caracteres 
NomeAdvogadoProcesso − cadeia de caracteres 
NumeroOrgaoJudiciarioProcesso − inteiro (FK) 
NumeroTribunal − inteiro (FK) 
NumeroUnidadeOrigemProcesso − inteiro (FK) 
Considerando as regras para o desenvolvimento do MER normalizado, o Técnico deve concluir 
corretamente que um atributo que NÃO pode estar na entidade Processo é o 
a) NomeAdvogadoProcesso. 
b) AnoProcesso. 
c) NumeroOrgaoJudiciarioProcesso. 
d) NumeroTribunal. 
e) NumeroUnidadeOrigemProcesso. 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 155 
160 
 
41. BANCA: FCC ANO: 2016 ÓRGÃO: TRT - 23ª REGIÃO (MT) PROVA: ANALISTA JUDICIÁRIO – 
TECNOLOGIA DA INFORMAÇÃO 
[29] Um Analista está desenvolvendo um Modelo Entidade-Relacionamento do banco de dados de 
um tribunal sob uma perspectiva lógica e parte do modelo é formado pelas duas entidades abaixo, 
relacionadas com cardinalidade n:m. 
A entidade Processo contém os atributos: 
− NuM_Seq (número sequencial do processo por unidade de origem) − valor inteiro − (PK). 
− Dig (dígito verificador) − valor inteiro − (PK). 
− Ano (ano do ajuizamento) − valor inteiro− (PK). 
− Org (órgão ou segmento do Poder Judiciário, sendo 5 o correspondente à Justiça do Trabalho) − 
valor inteiro. 
− Tribunal (tribunal do segmento do Poder Judiciário, sendo 23 para o TRT da 23ª Região) − valor 
inteiro (FK). 
− Origem (unidade de origem do processo, sendo 4 zeros para o TRT) − valor inteiro. 
A entidade Advogado contém os atributos: 
− Num_OAB (número da OAB) − cadeia de caracteres− primary key. 
− Nome (nome do advogado) − cadeia de caracteres. 
− Telefone (telefone residencial e comercial) − cadeia de caracteres. 
Considerando que Advogado acompanha Processo, 
a) o atributo Num_OAB precisa aparecer também na entidade Processo, como chave estrangeira, 
para garantir a integridade referencial entre os dados. 
b) o relacionamento não pode ser n:m, pois em cada Processo não se pode referenciar mais do que 
um Advogado para cada uma das partes, logo, trata-se de um relacionamento 1:n. 
c) o atributo Tribunal não pode ser chave estrangeira na entidade Processo, pois dos Tribunais não 
há necessidade de se cadastrar nada além do número. 
d) na implementação das tabelas, o relacionamento n:m deverá ser dividido em duas relações 1:n e 
uma nova tabela deverá ser criada para representar o relacionamento. 
e) como a relação é n:m, os atributos chave primária da entidade Processo devem aparecer na 
entidade Advogado como chave estrangeira e vice-versa. 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 156 
160 
42. BANCA: FCC ANO: 2014 ÓRGÃO: TJ-AP PROVA: ANALISTA JUDICIÁRIO - DESENVOLVIMENTO DE 
SISTEMAS 
Uma Forma Normal (FN) é uma regra que deve ser obedecida por uma tabela para ser considerada 
bem projetada. As descrições a seguir são de tabelas em Formas Normais. 
I. A tabela não contém dependências transitivas, ou seja, as colunas que não sejam chave primária 
não dependem funcionalmente de outras colunas ou combinação de colunas que não sejam chave 
primária. 
II. A tabela não contém dependências parciais, ou seja, cada coluna não chave depende da chave 
primária completa e não apenas de parte dela. 
Os itens I e II descrevem, respectivamente, regras referentes à 
A 4FN e 2FN. 
B 2FN e 3FN. 
C 3FN e 2FN. 
D 1FN e 3FN. 
E 3FN e 4FN. 
 
43. BANCA: FCC ANO: 2013 ÓRGÃO: MPE-MA PROVA: ANALISTA JUDICIÁRIO - BANCO DE DADOS 
Em um banco de dados relacional, a atividade de normalizar suas tabelas tem como objetivo 
A gerar os triggers especificados para o banco de dados. 
B eliminar, ou pelo menos diminuir redundâncias de dados desnecessárias nessas tabelas. 
C impedir o acesso ao banco de dados, por parte de usuários desconhecidos. 
D compilar todas as funções inseridas no banco de dados. 
E preparar todas as tabelas do banco de dados para um backup completo. 
 
 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 157 
160 
GABARITO 
1. D 
2. B 
3. C 
4. C 
5. E 
6. E 
7. C 
8. E 
9. C 
10. A 
11. A 
12. C 
13. D 
14. B 
15. A 
16. C 
17. D 
18. E 
19. E 
20. E 
21. C 
22. E 
23. D 
24. B 
25. D 
26. B 
27. D 
28. C 
29. B 
30. D 
31. C 
32. E 
33. C 
34. A 
35. C 
36. E 
37. D 
38. B 
39. E 
40. A 
41. D 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 158 
16042. C 
43. B 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 
 
 159 
160 
 
CONSIDERAÇÕES FINAIS 
Chegamos ao final da nossa aula sobre o modelo relacional! Considero esse um dos assuntos mais 
densos do nosso curso. Tente esgotar as questões sobre o assunto e, se possível, assistir as 
videoaulas com os conceitos associados ao tema. 
A continuação desse assunto encontra-se na próxima aula. Devemos falar sobre a linguagem SQL, 
por meio do SQL é possível usar os conceitos do modelo relacional em Sistemas Gerenciadores de 
banco de dados para criar estruturas de armazenamento e manipular os dados sobre as mesmas. 
Espero reencontrar você. 
As videoaulas referentes a esse assunto já estão disponibilizadas no site do Estratégia Concursos®, 
não deixe de assistir e mandar suas observações! 
Até a próxima! 
Thiago Cavalcanti 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579
 
 
 
 
 160 
160 
 
 
 
 
 
Thiago Rodrigues Cavalcanti, Equipe de TI do Estratégia Concursos
Aula 02
Banco de Dados e Colaboração Mensageira p/ BRB (Analista TI) Com Videoaulas - Pós-Edital
www.estrategiaconcursos.com.br
1177579

Mais conteúdos dessa disciplina