Buscar

Aula-06-Informática--Teoria-e-Questões-comentadas-ICMS-RJ-Modelo-Relacional-de-Dados-v2 (1)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 47 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 47 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 47 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aula 06 
Curso: Informática – Teoria e Questões 
comentadas p/ ICMS RJ 
Professor: Gustavo Cavalcante 
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 2 de 47 
www.exponencialconcursos.com.br 
 
 Olá pessoal, vamos para mais uma aula de teoria e exercícios para 
SEFAZ-RJ. Dúvidas, sugestões ou críticas, estou a disposição por e-mail: 
gustavo.cavalcante@exponencialconcursos.com.br. Continuem estudando com 
muita vontade, pois somente assim alcançarão seus objetivos. 
 Vou iniciar a aula com uma breve revisão, pois os conceitos vistos nas 
últimas aulas serão necessários para o entendimento desta. Na aula 05, 
revisamos os conceitos de entidades, atributos, relacionamentos, introduzindo 
a idéia dos diagramas E-R, e vimos o conceito de cardinalidade. Assim, 
devemos lembrar que todos esses conceitos citados no edital estão 
relacionados principalmente com dois modelos: Modelo de entidade-
relacionamento (E-R) e Modelo relacional. 
Abaixo vamos revisar do que se trata cada um desses modelos: 
Modelo relacional Usa uma coleção de tabelas para representar os 
dados e suas relações. Cada tabela possui colunas 
com nomes únicos. É um modelo baseado em 
registros, isto é, cada tabela contém registros de um 
tipo específico. As colunas da tabela correspondem 
aos atributos do registro. 
Modelo de entidade-
relacionamento (E-R) 
É baseado em uma percepção do mundo real, sendo 
que cada objeto do mundo real é considerado uma 
entidade. Consiste na descrição de entidades e 
suas relações. 
 
Outros conceitos importantes são os três níveis de abstração: 
Modelo Conceitual – de alto nível, oferecendo conceitos próximos aos 
entendidos pelo usuário. Não depende do SGBD. Exemplo: Modelo de 
entidade-relacionamento. 
Modelo Lógico – de nível intermediário. O projetista do banco de dados 
mapeia o esquema conceitual de alto nível para o modelo de dados de 
implementação do sistema de banco de dados que será usado. Neste 
modelo já poderemos descrever a estrutura do banco de dados, 
descrevendo os dados, os relacionamentos, as restrições de consistência e 
a integridade. Exemplo: Modelo relacional. 
Modelo Físico – de baixo nível. Descreve como os dados serão fisicamente 
armazenados. 
 Na aula passada, focamos no modelo conceitual. Nesta aula, veremos 
como chegar ao modelo lógico a partir do modelo conceitual, transformando o 
modelo E-R no modelo relacional. 
Aula 06 – Modelo Relacional de Dados. 
http://www.exponencialconcursos.com.br/
mailto:gustavo.cavalcante@exponencialconcursos.com.br
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 3 de 47 
www.exponencialconcursos.com.br 
Veremos como se converter o modelo E-R em um projeto relacional. 
Utilizaremos esquemas para representar as tabelas do banco de dados. 
 
 Segue o sumário da aula: 
Assunto Página 
1- Modelo Relacional de Dados 03 
 1.1 – Conceitos básicos sobre o modelo 03 
 1.2- Regras de Codd 09 
 1.3- Transformando um E-R em um BD relacional 10 
 1.4 - Normalização 14 
2 – Questões Comentadas 19 
3 – Lista de Questões 38 
4 – Gabarito 47 
 
 
1.1 – Conceitos básicos sobre o modelo 
 Como vimos um projeto de banco de dados possui os seguintes 
passos: modelagem conceitual, com a função de capturar requisitos e 
informações necessárias para construir um modelo de banco de dados; projéto 
lógico, que define as estruturas de dados a nível de SGBD; e o projeto físico, 
que definirá o BD propriamente dito com os seus parâmetros de acesso. 
 Nesta aula veremos como um BD relacional é organizado (como as 
tabelas são formadas, como elas se relacionam). 
 Como já vimos os BDs são compostos por tabelas (também chamadas 
de relações). Tabelas são conjuntos de linhas ou tuplas, não necessariamente 
ordenadas. Cada uma das tuplas é composta por campos ou registros, que 
guardam um dado que nada mais é que valor de um atributo. 
 O conjunto de todos os valores de um determinado atributo forma uma 
coluna. O nome da coluna, normalmente recebe o nome do atributo. Vejamos 
um exemplo a seguir: 
1 – Modelo Relacional de Dados 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 4 de 47 
www.exponencialconcursos.com.br 
 
 As principais características de tabelas de um BD são: normalmente não 
estão ordenadas e os seus campos são atômicos e mono-valorados. 
 No caso do modelo relacional, é essencial para os relacionamentos entre 
tabelas que existam chaves. Vamos relembrar o conceito e os tipos de 
chaves: 
 
 Além das chaves, é importante que se criem regras que garantam a 
integridade de dados do BD, tornando os dados consistentes e de acordo 
com a realidade. Estas regras são importantes, pois mantém a integridade 
e a consistência do banco, mantendo os dados confiáveis, são chamadas 
restrições de integridade, e normalmente são adotadas pelo próprio SGBD. 
A seguir um resumo para revisarmos este assunto: 
Matricula Nome Idade Cidade
112334 Paulo 50 RJ
123245 Marcos 32 RJ
123212 João 44 SP
123124 Carlos 21 MG
Tabela Funcionário Coluna (atributo)
linha ou tupla
Chaves
Primária
atributo ou conjunto 
de atributos que 
torna um registro 
único (distingue 
uma linha das demais)
Estrangeira
atributos de uma 
tabela que são chave 
primária em outra 
tabela a qual se 
relaciona
Alternativa
é um atributo ou 
conjunto de atributos 
que podem ser 
escolhidos para 
distinguir uma linha 
das demais, mas não 
são a chave primária.
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 5 de 47 
www.exponencialconcursos.com.br 
 
 As restrições que dizem respeito à chave primária são muito simples, 
por isso vou comentar apenas à restrição relcionada à chave estrangeira. A 
existência de chaves estrangeiras em tabelas do BD impõe restrições na 
medidam em que dados são inseridos/alterados/excluidos no banco. 
 Quando incluimos dados em tabela que contém a chave estrangeira, 
deveremos garantir que o valor da chave estrangeira seja igual ao valor 
da chave primária na outra tabela. Vamos usar o exemplo de um BD 
com as tabelas Funcionário (Matríclua, Nome, Cód_Departamento) e 
Departamento (Cód_Departamento, Descrição). Percebemos que 
Cód_Departamento é uma chave estrangeira em Funcionário. Portanto, 
Caso seja incluida nova linha de dados em Funcionários o valor da 
coluna Cód_Departamento deve ser um dos valores presentes na tabela 
Departamento. 
 O mesmo deve ocorrer caso alteremos o valor de Cód_Departamento 
em uma linha já existente em Funcionário. O valor deve ser escolhido 
dentre os valores listados na chave primária Cód_Departamento em 
Departamento. 
 Já quando excluimos uma linha da tabela que contém a chave primária 
(agora estamos alterando a tabela Departamento), devemos garantir 
que não aparecerão os valores excluídos de cahve primária na chave 
estrangeira (tabela Funcionários). 
 Além destas restrições de integridade, garantidas pelo SGBD, podemos 
ter outros tipos de restrições no BD. Seriam restrições não garantidas pelo 
SGBD e devem ser implementadas pelo programador. Neste caso são 
restrições chamadas semântica, e são apenas ligadas ao negócio, ou a 
realidade do minimundo a que se deseja representar. Por exemplo, 
funcionários de uma empresa devem ser maiores de idade; um empregado da 
área de engenharia deve ser engenheiro, e não administrador. 
Restrições de 
Integridade
Restrição de chave ou 
Integridade da chave 
a chave é obrigatória e 
única para cada tupla
Restrição de entidade
chave primária não pode
ter valor NULL
Restrição de dominio ou 
integridade de dominio 
os valoresdos atributos
devem estar dentro de 
seu domínio
Integridade Referencial
garante que dados das 
chaves primárias devem 
ser iguais às chaves 
estrangeiras relacionadas
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 6 de 47 
www.exponencialconcursos.com.br 
 (FCC - AFR SP/SEFAZ SP/Gestão Tributária/2013) 
Instruções: Para responder à questão, considere o texto a seguir: 
A empresa Express conta com diversas equipes de desenvolvimento, nas áreas 
de software em geral, incluindo técnicas estruturadas e de orientação a 
objetos. Essas equipes estão em constante aperfeiçoamento, visando mantê-
las sempre atualizadas com as técnicas mais recentes da engenharia de 
software, incluindo-se aí a área de bancos de dados. 
A Express atende clientes de diversos perfis, abrangendo pequenas, médias e 
grandes empresas. Dessa forma, os sistemas de computação solicitados 
também atendem a esse perfil, compreendendo sistemas de pequeno, médio e 
grande porte. 
A Express conta com equipes especializadas, de grande experiência nas áreas 
acima destacadas, estando, portanto, apta a atender desde um simples 
produto até um grande sistema de software. Dessa forma, os produtos 
desenvolvidos pela Express possuem, normalmente, uma qualidade bastante 
apurada, o que pode ser verificado pelas diversas técnicas existentes. 
Uma das normas da Express é a de produzir documentação de excelente 
qualidade, cuja finalidade é, não apenas para entrega aos clientes, mas 
também para possibilitar a manutenção adequada dos produtos desenvolvidos. 
No projeto de bancos de dados relacionais, a Express tem preocupação de 
produzir modelos mais adequados. A chave primária de uma relação de um 
banco de dados relacional 
a) só pode servir como chave estrangeira de, no máximo, uma outra relação. 
b) não pode ser indexada, quando da implementação do banco de dados. 
c) não pode conter atributos do tipo Data. 
d) pode ser formada por mais de um atributo. 
e) não pode conter mais do que um atributo. 
Comentários: 
 Vamos comentar os itens: 
a) só pode servir como chave estrangeira de, no máximo, uma outra relação. 
 Item incorreto. A chave primária pode servir de chave estrangeira de 
várias tabelas. Por exemplo: 
Funcionário(matricula, nome,id_departamento) 
Departamento(id_departamento, nome) 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 7 de 47 
www.exponencialconcursos.com.br 
Projeto(id_projeto, id_departamento) 
b) não pode ser indexada, quando da implementação do banco de dados. 
 Item incorreto. A chave primária normalmente é indexada pelo SGBD. 
c) não pode conter atributos do tipo Data. 
 Item incorreto. Pode sim conter atributos do tipo data. Por exemplo: 
Aluno (data_matricula, Nome) 
d) pode ser formada por mais de um atributo. 
 Item correto. Para se tornar única as vezes é necessário que se utilize 
mais de um atributo para formar a chave primária. Exemplo: 
Aluno (data_matricula, Nome) 
e) não pode conter mais do que um atributo. 
 Item incorreto. 
Resposta: D. 
 
 
Por último, vamos analisar uma restrição com relação ao atributo. 
Atributos multi-valorados não são desejáveis em diagramas E-R, e não são 
favoráveis à implementação de BDs relacionais. Por isso, a solução mais 
simples é transformar atributos multi-valorados em um entidade. Vamos a um 
exemplo: 
 
 
 No diagrama anterior telefone é um atributo multi-valorado. 
Transformaremos este atributo em uma entidade fraca como mostra o 
diagrama a seguir: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 8 de 47 
www.exponencialconcursos.com.br 
 
 
Os Esquemas ficariam da seguinte maneira: 
Funcionário (matrícula, nome) 
Telefone (matrícula, número) 
 Outra solução possível seria limitar o número de vezes que o atributo 
poderá ser preenchido, isto é, a quantidade de telefones que cada funcionário 
poderá ter. Caso cada funcionário tenha 3 telefones, uma solução seria criar 
uma coluna para cada telefone na própria tabela Funcionário: 
Funcionário (matrícula, nome, telefone1, telefone2, telefone3) 
 Um bom projeto de banco de dados deve manter a integridade, evitar 
redundâncias de dados que ocupem espaço no disco sem necessida, e devem 
otimizar as consultas. 
 Para isso veremos alguma regras a serem seguidas para criar um banco 
de dados relacional. 
 É importante ressaltar que veremos o mais importante para a prova, e 
não entrarei em detalhes de programação, regras de nomeação de tabelas, 
colunas ou qualquer assunto relacionado à implementação de projeots de BD 
na prática. 
 Alguns assuntos são um pouco mais difíceis, pois já estamos em um 
nível de abstração mais distante do usuário. 
 Prestem atenção aos exemplos, pois ajudam bastante a guardar alguns 
conceitos, e reparem como as questões repetem os mesmos casos: 
funcionário X departamento, empregado X dependente, médico X consulta X 
paciente, etc. 
 
 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 9 de 47 
www.exponencialconcursos.com.br 
1.2 – Regras de Codd 
 Edgard F. Codd estabeleceu 12 regras que determinam o modelo 
relacional de banco de dados. As 12 regras são baseadas na regra zero: 
“qualquer sistema considerado, ou que deseja ser, um sistema gerenciador de 
banco de dados relacional deve ser capaz de gerenciar, por completo, bases 
de dados através de sua capacidade relacional.”. 
 As 12 regras são: 
Regra da informação Os dados devem ser armazenados de forma 
única e em tabelas. 
Regra da garantia de 
acesso 
Todo dado pode ser acessado utilizando-se o 
nome da tabela, o valor da chave primária e o 
nome da coluna. 
Tratamento sistemático 
de valores nulos 
Os valores NULOS representam dados não 
existentes. 
Regra do catálogo 
relacional ativo ou 
Formação de catálogo ou 
Catálogo on-line baseado 
no modelo relacional 
Todo o banco de dados deve estar disponível 
em tabelas e deve ser acessível por meio de 
linguagens específicas. 
Regras de atualização de 
alto-nível 
O usuário deve ser capaz de manipular as 
informações do BD, inserir, alterar e excluir 
vários dados ao mesmo tempo. 
Regra de sublinguagem 
de dados abrangente 
Deve possuir pelo menos uma linguagem para 
ser utilizada pelo usuário para manipular os 
dados. 
Regra de independência 
física 
Programas de aplicação não devem ser 
logicamente alterados caso sejam modificadas 
na forma como os dados estão fisicamente 
armazenados. 
Regra de independência 
lógica 
Qualquer alteração na estrutura do BD 
(estrutura lógica como inclusão/exclusão de um 
campo de uma tabela, alteração de 
relacionamentos entre tabelas, etc) não deve 
afetar o aplicativo. 
Regra de atualização de 
visões ou Manipulação por 
meio de visão 
Um aplicativo que faz uso de visões deve ser 
capaz de efetuar alterações, exclusões e 
inclusões nestas estruturas. 
Regra de independência 
de integridade 
As relações de integridade devem ser definidas 
e estabelecidas dentro do catálogo do sistema 
ou dicionário de dados (ou seja, no SGBD), e 
ser independentes da lógica do aplicativo. 
Regra de independência 
de distribuição 
O fato de alguns SGBDs terem a capacidade de 
serem distribuídos em diversas 
plataformas/equipamentos não pode afetar a 
funcionalidade do sistema e dos aplicativos. 
Regra não-subversiva Não deve ser possível subverter ou ignorar as 
regras de integridade e restrições definidas. 
 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões ComentadasProf. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 10 de 47 
www.exponencialconcursos.com.br 
 A descrição do banco de dados é representada no nível lógico da 
mesma forma que os dados ordinários (tabelas), permitindo que usuários 
autorizados utilizem a mesma linguagem relacional aplicada aos dados 
regulares. 
 Este item não aparece muito em prova, por isso não irei perder muito 
tempo com ele. Se aparecer será igual ao exemplo a seguir, citando a 
definição de uma das regras e perguntando qual é. 
(FCC - AFR SP/SEFAZ SP/Tecnologia da 
Informação/2009) Considere a seguinte regra de Codd, aplicada aos bancos 
de dados relacionais: A descrição do banco de dados é representada no nível 
lógico da mesma forma que os dados ordinários, permitindo que usuários 
autorizados utilizem a mesma linguagem relacional aplicada aos dados 
regulares. O sentido dessa regra diz respeito à 
a) independência de distribuição. 
b) formação do catálogo. 
c) manipulação, por meio de visões. 
d) independência física. 
e) independência lógica. 
Comentários: 
 A questão trata da regra “Regra do catálogo relacional ativo ou 
Formação de catálogo ou Catálogo on-line baseado no modelo 
relacional”, todo o banco de dados deve estar disponível em tabelas e 
deve ser acessível por meio de linguagens específicas. 
 Pouquíssimas questões sobre o assunto. Por isso, sugiro apenas focar 
nas regras quando o resto da matéria estiver bem tranquila. 
Resposta: B. 
 
1.3 – Transformando um E-R em um BD relacional 
 Cada definição de BD, chamada de esquema do BD, deve conter a 
relação de tabelas, suas colunas e restrições de integridade. Cada entidade e 
relacionamento do projeto conceitual podemos representar por meio de 
um esquema, que terá o mesmo nome da entidade ou relação. 
 No caso das entidades é mais simples. Cada entidade será 
representada por um esquema, por exemplo, vamos considerar o diagrama 
E-R a seguir: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 11 de 47 
www.exponencialconcursos.com.br 
 
 A entidade Empregado será transformada na tabela Empregado 
(matrícula, Nome), onde todos os atributos de Empregado foram retirados do 
modelo E-R, assim como sua chave primária. Esse esquema será uma 
tabela do banco de dados. 
 No caso dos relacionamentos, poderemos ter 3 alternativas, 
dependendo do caso: criar uma tabela própria para o relacionamento, criar 
uma coluna em uma das entidades para representar o relacionamento, e 
fundir duas entidades que se relacionam. 
 No caso de criação de uma tabela própria, suas colunas serão os 
atributos do relacionamento e as chaves de cada entidade. A chave primária 
da tabela será o conjunto das colunas correspondentes às chaves primárias 
das entidades. Exemplo: 
 
 Neste caso temos relacionamentos muitos-para-muitos, criaremos uma 
tabela única para descrever o relacionamento e teremos o modelo a seguir, 
agora utilizando outra representação para os esquemas: 
 
 Quando temos uma das entidades participantes do relacionamento com 
cardinalidade máxima 1, poderemos criar colunas adicionais nas tabelas da 
entidade que possui cardinalidade máxima. Estas colunas serão a chave 
primária da outra entidade e os atributos do relacionamento. Exemplo: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 12 de 47 
www.exponencialconcursos.com.br 
 
 Neste caso o relacionamento será representado no esquema: 
Funcionário(matrícula, nome, data de início, código) 
Departamento(código, descrição) 
 Última opção é a fusão de entidades, que só pode ser aplicada quando o 
relacionamento é de 1:1. Uniremos em uma única tabela os atributos de todas 
as entidades e do relacionamento. Exemplo: 
 
Esquema: 
Carro(chassi, modelo, data de início, código, potência) 
 Observem que existe um fator que pode decidir qual o método 
utilizaremos, que é a cardinalidade mínima e máximadas entidas que se 
relacionam. A tabela a seguir, retirada do livro “Projeto de banco de dados”, 
de Carlos Albero Heuser, 4ª edição, resume bem como escolher a regra de 
acordo com a cardinalidade. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 13 de 47 
www.exponencialconcursos.com.br 
 
 
 Resumindo, para se escolher a chave primária do esquema de um 
relacionamento devemos seguir os seguintes critérios: 
Relacionamentos muitos-para-muitos União das chaves primárias das 
entidades relacionadas 
Relacionamentos binários um-para-
um 
Uma das chaves primárias das 
entidades relacionadas 
Relacionamentos binários muitos-
para-um ou um-para-muitos 
A chave primária da entidade do lado 
muitos 
Relacionamentos enários União das chaves primárias das 
entidades relacionadas 
 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 14 de 47 
www.exponencialconcursos.com.br 
1.4 – Normalização 
 Vimos que no modelo relacional os domínios dos atributos são 
atômicos. Isso ocorre para otimizar o banco de dados, reduzir a redundância, 
criar relações menos complexas, etc. Para atingir as características ideais 
utilizamos o processo de normalização. 
 Dizemos então que um esquema de relação R está na primeira forma 
normal ou 1FN se os domínios de todos os atributos são de R são 
atômicos. Alguns autores consideram que uma tabela que contém atributos 
não atômicos possui tabelas aninhadas, ou colunas não atômicas. Possuir 
tabelas aninhadas é sinonimo de possuir colunas multi-valoradas ou não 
atômicas. Vejamos um exemplo para ficar mais claro: 
Cod_Departamento Nome_Dep 
Funcionário 
Matrícula Nome Data de entrada 
1 Auditoria 
112 Pedro 01/01/2009 
234 Gilberto 21/12/2013 
111 Manuel 05/05/2009 
2 RH 
223 Ricardo 05/06/2008 
444 Leonardo 05/07/2007 
556 João 05/08/2014 
 Neste caso temos o esquema Departamento, que possui uma tabela 
aninhada Funcionário: 
Departamento(Cod_Departamento, Nome_Dep, (Matrícula, Nome, Data de 
entrada )) 
 Então, podemos dizer que um esquema de uma relação está na 
primeira forma normal quando não possui tabelas aninhadas. Para 
transformarmos o exemplo acima em um esquema em 1FN temos duas 
opções: 
 Continuar com uma tabela única, mas repetir cada uma das linhas com 
os dados de departamento para cada funcionário. Vejam a seguir. Não é 
a melhor solução, tendo em vista a quantiade de dados redundantes. 
Cod_Departamento Nome_Dep Matrícula Nome Data de entrada 
1 Auditoria 112 Pedro 01/01/2009 
1 Auditoria 234 Gilberto 21/12/2013 
1 Auditoria 111 Manuel 05/05/2009 
2 RH 223 Ricardo 05/06/2008 
2 RH 444 Leonardo 05/07/2007 
2 RH 556 João 05/08/2014 
 
 A segunda opção seria separar as tabelas aninhadas, no caso do 
exemplo, em duas tabelas, uma de Departamento (Cod_Departamento, 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 15 de 47 
www.exponencialconcursos.com.br 
Nome_Dep) outra de Funcionário_Dep(Cod_Departamento, Matrícula, 
Nome, Data de entrada). Reparem que a chave primária da tabela 
aninhada será o conjunto de: chaves primárias da tabela 
aninhada(Funcionário) mais a chave primária das tabelas a que ela está 
aninhada(Departamento). 
 Para passarmos para as demais formas normais é necessário um outro 
conceito, o de dependência funcional. Um conjunto de atributos de uma 
tabela B depende funcionalmente de um atributo A, atributo da mesma 
tabela, quando, para todas as tuplas da tabela, para cada valor de A queaparece na tabela, aparece o mesmo valor de B, isto é, para cada valor 
de A está associado um e somente um valor de B. Simbolicamente 
representamos esta dependência da seguinte forma: 𝐴 → 𝐵 . Vejamos um 
exemplo a seguir: 
Código_Função Nome Adicional 
A João 2000 
B Carlos 3000 
A Pedro 2000 
A Camila 2000 
C José 1000 
C Raimundo 1000 
 
 Vejam na tabela que o valor da coluna Adicional depende de 
Código_Função. Para cada valor de Código_Função temos um valor 
correspondente de Adicional. 
 A dependência funcional pode ser parcial ou total. Será parcial 
caso B dependa somente de um subconjunto de A. Será total caso B 
dependa inteiramente de A. 
 Diante desta definição podemos afirmar que todos os atributos da 
tabela dependem funcionalmente da chave primária da tabela. 
 A segunda forma normal ou 2FN tem o objetivo de eliminar um 
certo tipo de redundância de dados. Uma tabela se encontra na 2FN quando 
estiver na 1FN e não contiver dependências parciais, isto é, só contiver 
dependências totais. Quando uma tabela não se encontra na 2FN podemos 
dizer que contém dependências funcionais parciais. 
 O detalhe é que, caso a tabela contenha uma chave primária simples, 
isto é, com apenas uma coluna, caso ela já esteja na 1FN, podemos dizer que 
ela também está na 2FN, pois é impossível que uma coluna dependa de uma 
parte da chave priméria, pois ela é simples, não é composta por partes. 
 Vamos voltar ao exemplo dos Funcionários e Departamentos. Tinhamos 
a seguinte solução: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 16 de 47 
www.exponencialconcursos.com.br 
Departamento (Cod_Departamento, Nome_Dep) 
Funcionário_Dep (Cod_Departamento, Matrícula, Nome, Data de entrada) 
 Neste caso, na tabela Funcionário_Dep, Nome depende apenas de 
matrícula, enquanto que Data de entrada depende tanto de matrícula quanto 
de Cod_Departamento. Nome só depende de matrícula porque o nome do 
funcionário está diretamente ligado à sua matrícula. Já Data de entrada 
depende tanto da matrícula, que vincula a um funcionário específico, quanto 
ao código do departamento a que o funcionário está ligado. 
 Temos uma dependência por parte de Nome. Para passarmos para a 
2FN devemos elinar as dependências de parte da chave primária. Para isso 
vamos dividir a tabela Funcionário_Dep em duas: 
Funcionário ( Matrícula, Nome) 
Funcionário_Dep (Cod_Departamento, Matrícula, Data de entrada) 
 Uma tabela está na terceira forma normal ou 3FN, quando, além de 
estar na 2FN, não contém dependências transitivas ou indiretas. 
Dependências transitivas ou indiretas acontecem quando um atributo da 
relação, que não é a chave primária, depende funcionalmente de outro 
atributo ou conjunto de atributos que também não são a chave primária. 
 Apenas para exemplificar, caso tivéssemos uma coluna Adicional e uma 
Função na tabela Funcionário, teríamos uma dependência transitiva, pois 
Adicional depênde de Função. Por exemplo, um gerente ganha um adicional de 
gerente, já um coordenador seria diferente. Para resolvermos isso, criaríamos 
o seguinte esquema: 
suponha: 
Funcionário ( Matrícula, Nome, Função, Adicional) 
Solução: 
Funcionário ( Matrícula, Nome, Função) 
Adic_Função(Função, Adicional) 
 Uma tabela está na forma normal de Boyce-Codd (BCNF) se para 
toda dependência funcional 𝐴 → 𝐵 em R, 𝐴 → 𝐵 é uma dependência 
funcional trivial, isto é, B é subconjunto de A, e A é superchave de R. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 17 de 47 
www.exponencialconcursos.com.br 
 
 Vamos resolver um exercício para fixar estes conceitos. 
 (FCC - AC TCE PR/TCE-PR/Informática/2011) Considere 
a situação expressa pelas seguintes relações: um cliente faz n pedidos mas 
um pedido específico é de somente um cliente. Seguindo, em um pedido 
específico são relacionados n produtos mas um mesmo produto pode constar 
em mais de um pedido. Após normalizar essas relações é possível que se 
estabeleçam tabelas relacionais correspondentes, sendo elas 
a) cliente, pedido e produto. 
b) cliente, cliente-pedido e produto. 
c) cliente, pedido, pedido-produto e produto. 
d) pedido-produto e cliente-produto. 
e) pedido, pedido-produto e cliente-produto. 
Comentários: 
 Esta questão possui um nível mais alto de dificuldade para uma prova 
de Auditor Fiscal. Contudo, seus conceitos podem ajudar no entendimento de 
como funciona o modelo relacional, e facilitar a solução de algumas questões 
mais simples. Cliente possui relacionamento 1:n com pedidos. Pedidos possui 
relacionamento n:n com produtos. 
 Cada entidade e relacionamento do projeto conceitual podemos 
representar por meio de um esquema, que terá o mesmo nome da entidade 
ou relacionamento. Este é um método utilizado para converter o modelo E-R 
em um projeto relacional. 
Dizemos então que 
um esquema de 
relação R está na 
1FN se os 
domínios de todos
os atributos são de 
R são atômicos.
Uma tabela se 
encontra na 2FN
quando estiver na 
1FN e não contiver
dependências
parciais, isto é, só 
contiver 
dependências totais.
Uma tabela está na 
terceira forma normal ou 
3FN, quando, além de estar 
na 2FN, não contém
dependências transitivas
ou indiretas. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 18 de 47 
www.exponencialconcursos.com.br 
 O esquema gerado contará com as tabelas: cliente, cliente-pedido 
(tabela do relacionamento), pedido, pedido-produto (tabela do 
relacionamento), produto. 
 Contudo, devemos retirar as redundâncias, e otimizar o banco de dados, 
por isso a questão informa que a resposta procurada será obtida após a 
normalização. Para isso, vamos seguir as regras listadas na figura retirada do 
livro “Projeto de banco de dados”, de Carlos Albero Heuser, 4ª edição, já 
colocada anteriormente nesta aula. 
 Lembrando que temos 3 soluções para implementação de um 
relacionamento. Tabela própria quer dizer que o relacionamento formará 
uma tabela. Adição de coluna quer dizer que adicionaremos colunas dentro 
de uma tabela de uma das entidade para inserir os atributos do 
relacionamento. Fusão de uma tabela de entidades quer dizer que faremos 
uma fusão das tabelas das entidades envolvidas no relacionamento. 
 Exemplo de uma fusão: vamos supor que temos as entidades professor 
e matéria, sendo que se relacionam por meio do relacionamento ensina. Cada 
matéria só pode ter um professor e cada professor só pode ensinar uma 
matéria. O relacionamento ensina possui um atributo data_ini, que traz a data 
em que teve início o ensino da matéria pelo professor. Sendo assim, a 
principio, teremos as tabelas: 
Professor(matricula, nome) 
Ensina(codEn, matricula,cod_materia, data_ini) 
matéria(cod_materia, nome_materia) 
 Uma das soluções para otimizar o BD seria fundir as entidades e 
acrescentar o atributo do relacionamento: 
Professor(matricula, nome, data_ini, nome _materia) 
Concluímos por meio de análise do enunciado que: cliente possui 
relacionamento 1:n com pedidos. Pedidos possui relacionamento n:n com 
produtos. Pode não haver cliente, assim como pode não haver pedido. 
 A melhor solução seria adicionar uma coluna a cliente com os atributos 
do relacionamento cliente-pedido e eliminar esta tabela. Com relação a 
pedido-produto, como é um relacionamento n:n, manteremos as tabelas. 
 Como observado, esta questão é de um nível difícil. Em uma prova para 
Auditor Fiscal poucas pessoas fariam esta questão. Mas os conceitos aplicados 
a ela podem ajudar a resolver outras questões. 
Resposta: C. 
 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 19 de 47 
www.exponencialconcursos.com.br 
 
1 – (FCC - AFTM SP/Pref SP/Tecnologia da Informação/2012) 
Considere o seguinte projeto conceitual de um banco de dados: 
 
Para se construir o projeto lógico deste banco de dados, no mapeamento do 
relacionamento ExpostoEm e seus atributos, 
a) pode ser criada uma relação ExpostoEm, contendo como chaves 
estrangeiras as chaves primárias das relações correspondentes às entidades 
Produto, Loja e Lote e como atributos Unidade e Quantidade. 
b) os atributos Unidade e Quantidade podem ser adicionados à relação 
correspondente à entidade Lote. O atributo CodLote deve ser chave 
estrangeira nas relações correspondentes às entidades Produto e Loja. 
c) os atributos Unidade e Quantidade podem ser adicionados à relação 
correspondente à entidade Loja. O atributo CodLoja deve ser chave 
estrangeira nas relações correspondentes às entidades Produto e Lote. 
d) pode ser criada uma relação ExpostoEm, contendo como atributos 
CodExposicao, Unidade e Quantidade. O atributo CodExposicao é a chave 
primária desta relação e deve aparecer como chave estrangeira na relação 
correspondente à entidade Lote. 
e) pode ser criada uma relação ExpostoEm, contendo como atributos 
CodExposicao, Unidade e Quantidade. O atributo CodExposicao é a chave 
primária desta relação e deve aparecer como chave estrangeira nas relações 
correspondentes às entidades Produto, Loja e Lote. 
Comentários: 
2- Questões comentadas 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 20 de 47 
www.exponencialconcursos.com.br 
 Como vimos, para construir o projeto lógico de um relacionamento, 
primeiro o escrevemos em formato de esquema, com os atributos de chave 
primária das entidades relacionadas e seus prórpios atributos. 
 No caso, como é um relacionamento ternário, a chave primária será a 
união das chaves primárias das entidades relacionadas. 
ExpostoEm(CodProduto,CodLoja,CodLote, unidade, quantidade) 
Resposta: A. 
 
2 – (FCC - AFR SP/SEFAZ SP/Gestão Tributária/2013) Instruções: Para 
responder à questão, considere o texto a seguir: 
A empresa Express conta com diversas equipes de desenvolvimento, nas áreas 
de software em geral, incluindo técnicas estruturadas e de orientação a 
objetos. Essas equipes estão em constante aperfeiçoamento, visando mantê-
las sempre atualizadas com as técnicas mais recentes da engenharia de 
software, incluindo-se aí a área de bancos de dados. 
A Express atende clientes de diversos perfis, abrangendo pequenas, médias e 
grandes empresas. Dessa forma, os sistemas de computação solicitados 
também atendem a esse perfil, compreendendo sistemas de pequeno, médio e 
grande porte. 
A Express conta com equipes especializadas, de grande experiência nas áreas 
acima destacadas, estando, portanto, apta a atender desde um simples 
produto até um grande sistema de software. Dessa forma, os produtos 
desenvolvidos pela Express possuem, normalmente, uma qualidade bastante 
apurada, o que pode ser verificado pelas diversas técnicas existentes. 
Uma das normas da Express é a de produzir documentação de excelente 
qualidade, cuja finalidade é, não apenas para entrega aos clientes, mas 
também para possibilitar a manutenção adequada dos produtos desenvolvidos. 
No projeto de seus bancos de dados, a Express faz uso da modelagem 
relacional, na qual é necessário definir os domínios dos atributos de uma 
relação. Um domínio é considerado atômico se, na aplicação em questão, 
a) o comprimento máximo de seus valores tiver até 255 caracteres. 
b) seus elementos forem considerados como indivisíveis. 
c) não houver caractere especial nos valores dos atributos, tais como $ e @. 
d) forem admitidos apenas letras e espaços como caracteres válidos. 
e) não forem admitidos valores nulos. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 21 de 47 
www.exponencialconcursos.com.br 
Comentários: 
 No modelo E-R, utilizamos atributos de valores múltiplos e compostos, 
que possuem graus de subestrutura. Porém, ao passarmos para o modelo 
lógico, eliminamos esta subestrutura. 
 No caso do atributo composto, deixamos cada componente ser um 
atributo por si só. Por exemplo, Endereço, que tinha rua e cidade, deixa de ser 
um atributo e, rua e cidade passam a ser atributos da entidade. 
 Para o caso de um atributo de valores múltiplos, são criados novos 
esquemas de relação R, e então criamos uma tupla para cada item em um 
conjunto de valores. Por exemplo, vamos supor que tenhamos uma entidade 
funcionário que pode ter vários números de telefone. Número de telefone seria 
um atributo de valores múltiplos de funcionário. 
Para passarmos para o modelo lógico, teremos de criar uma tabela 
Num_telefone, com atributos matrícula e num_telefone da seguinte forma: 
Num_telefone(matrícula,num_telefone) 
 O domínio de um atributo é o conjunto de valores que ele pode 
assumir. No modelo relacional, todo atributo deve ser atômico, isto é, os 
elementos do domínio são considerados unidades indivisíveis. 
Resposta: B. 
 
3 – (FCC - AFRE RJ/SEFAZ RJ/2014) Instrução: Para responder à questão, 
considere o texto a seguir. 
Um funcionário ficou responsável pela elaboração de um modelo de dados e 
criação de um banco de dados para a Receita Estadual. O banco de dados 
deve controlar os funcionários da Receita, os departamentos aos quais estão 
vinculados e os projetos nos quais estão alocados, de acordo com a descrição: 
I. A Receita está organizada em departamentos. Cada departamento tem um 
nome único, um número único e um funcionário que gerencia o departamento. 
Há, ainda, a data em que o funcionário começou a gerenciar o departamento. 
II. Um departamento controla vários projetos. Cada projeto tem um nome 
único, um único número e uma única data de início. 
III. Cada empregado tem um número único de CPF, um número de seguro 
social, endereço, sexo, salário e data de nascimento. 
IV. Todo empregado está alocado em um departamento, mas pode trabalhar 
em diversos projetos, mesmo que controlados por diferentes departamentos. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 22 de 47 
www.exponencialconcursos.com.br 
Controla-se o número de horas que cada empregado trabalha em cada 
projeto. Controla-se o supervisor direto de cada empregado, que supervisiona 
seu trabalho. 
Considere: 
− Existe a tabela FUNCIONARIO, cuja chave primária é CPF. 
− Existe a tabela DEPARTAMENTO cuja chave primária é NUMERODEP. 
− O campo NDEP da tabela FUNCIONARIO refere-se ao número do 
departamento ao qual um funcionário está alocado. 
− O valor de NDEP em qualquer tupla da tabela FUNCIONARIO deve 
corresponder a um valor da chave primária da tabela DEPARTAMENTO em 
alguma tupla desta tabela. 
O campo NDEP pode ser 
a) a chave estrangeira na tabela FUNCIONARIO em relação à tabela 
DEPARTAMENTO. 
b) a chave secundária da tabela DEPARTAMENTO. 
c) a segunda chave primária da tabela FUNCIONARIO em relação à tabela 
DEPARTAMENTO. 
d) a chave estrangeira na tabela DEPARTAMENTO em relação à tabela 
FUNCIONARIO. 
e) o atributo referencial da superchave da tabela DEPARTAMENTO. 
Comentários: 
 As informações em que precisamos focar para resolver a questão são: 
− Existe a tabela FUNCIONARIO, cuja chave primária é CPF. 
− O campo NDEP da tabela FUNCIONARIO refere-se ao número do 
departamento ao qual um funcionário stá alocado. 
− O valor de NDEP em qualquer tupla da tabela FUNCIONARIO deve 
corresponder a um valor da chave primária da tabelaDEPARTAMENTO 
em alguma tupla desta tabela. 
 Portanto, sabemos que NDEP corresponde a um valor de chave 
primária de DEPARTAMENTO e que NDEP pertence à tabela 
FUNCIONARIO. Então, NDEP é uma chave estrangeira na tabela 
FUNCIONARIO. 
Resposta: A. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 23 de 47 
www.exponencialconcursos.com.br 
4 – (FCC - AFR SP/SEFAZ SP/Tecnologia da Informação/2009) 
Considere a afirmativa a seguir. 
Uma tabela está na .....I.... , se e somente se ela estiver na ....II... e os 
atributos não-chave forem .....III... . 
I, II e III podem ser corretamente preenchidos por: 
a) 2FN 1FN totalmente dependentes da totalidade da chave primária 
b) 2FN 1FN totalmente dependentes de parte da chave primária 
c) FNBC 1FN totalmente dependentes da totalidade da chave primária 
d) 3FN 2FN independentes da chave primária 
e) 3FN 1FN totalmente dependentes de parte da chave primária 
Comentários: 
 Vimos que no modelo relacional os domínios dos atributos são 
atômicos. Isso ocorre para otimizar o banco de dados, reduzir a redundância, 
criar relações menos complexas, etc. Para atingir as características ideais 
utilizamos o processo de normalização. 
Dizemos então que um esquema de relação R está na primeira forma 
normal ou 1FN se os domínios de todos os atributos são de R são 
atômicos. Alguns autores consideram que uma tabela que contém atributos 
não atômicos possui tabelas aninhadas, ou colunas não atômicas. Por isso, 
podemos dizer que um esquema de uma relação está na primeira forma 
normal quando não possui tabelas aninhadas. 
 Para passarmos para as demais formas normais é necessário um outro 
conceito, dependência funcional. Um conjunto de atributos de uma 
tabela B depende funcionalmente de A, atributo da mesma tabela, 
quando, para todas as tuplas da tabela, para cada valor de A que aparece 
na tabela, aparece o mesmo valor de B, isto é, para cada valor de A está 
associado um e somente um valor de B. Simbolicamente representamos 
esta dependência da seguinte forma: 𝐴 → 𝐵. 
 A dependência funcional pode ser parcial ou total. Será parcial 
caso B dependa somente de um subconjunto de A. Será total caso B 
dependa inteiramente de A. 
Diante desta definição podemos afirmar que todos os atributos da tabela 
dependem funcionalmente da chave primária da tabela. 
A segunda forma normal ou 2FN tem o objetivo de eliminar um certo tipo 
de redundância de dados. Uma tabela se encontra na 2FN quando estiver 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 24 de 47 
www.exponencialconcursos.com.br 
na 1FN e não contiver dependências parciais, isto é, só contiver 
dependências totais. 
Uma tabela está na terceira forma normal ou 3FN, quando, além de estar 
na 2FN, não contém dependências transitivas ou indiretas. 
Dependências transitivas ou indiretas acontecem quando um atributo da 
relação, que não é a chave primária, depende funcionalmente de outro 
atributo ou conjunto de atributos que também não são a chave primária. 
Uma tabela está na forma normal de Boyce-Codd (BCNF) se para toda 
dependência funcional 𝐴 → 𝐵 em R, 𝐴 → 𝐵 é uma dependência funcional 
trivial, isto é, B é subconjunto de A, e A é superchave de R. 
 
Voltando à questão: 
Uma tabela está na .....I.... , se e somente se ela estiver na ....II... e os 
atributos não-chave forem .....III... . 
O I pode ser 2FN, II será 1FN e o III totalmente dependente da totalidade da 
chave primária. 
Resposta: A. 
 
5 – (FCC - AFTM SP/Pref SP/Tecnologia da Informação/2012) A 
seguinte relação ProdLoja define para cada tupla um produto em uma loja, 
especificando a quantidade do produto na loja, o código e nome do produto e 
o código, nome e localização da loja. O domínio de todos os atributos da 
relação só pode incluir valores atômicos. Existem dependências funcionais 
entre os atributos CodProd e NomeProd e entre CodLoja e NomeLoja e 
LocalLoja. A chave primária é composta pelos atributos CodProd e CodLoja. 
 
Dizemos então que 
um esquema de 
relação R está na 
1FN se os domínios
de todos os 
atributos são de R
são atômicos.
Uma tabela se 
encontra na 2FN
quando estiver na 
1FN e não contiver
dependências
parciais, isto é, só 
contiver 
dependências totais.
Uma tabela está na 
terceira forma
normal ou 3FN, 
quando, além de 
estar na 2FN, não
contém
dependências
transitivas ou 
indiretas. 
ProdLoja
CodProd CodLoja Quantidade NomeProd NomeLoja LocalLoja
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 25 de 47 
www.exponencialconcursos.com.br 
Das três primeiras formas normais de relações baseadas em chaves primárias, 
esta relação respeita a 
a) primeira e a terceira formas normais. 
b) primeira, a segunda e a terceira formas normais. 
c) primeira e a segunda formas normais. 
d) primeira forma normal. 
e) segunda e a terceira formas normais. 
Comentários: 
A questão afirma o seguinte: 
1 - O domínio de todos os atributos da relação só pode incluir valores 
atômicos. Isto implica que a tabela está na 1FN. 
2 - Existem dependências funcionais entre os atributos CodProd e 
NomeProd e entre CodLoja e NomeLoja e LocalLoja. A chave primária é 
composta pelos atributos CodProd e CodLoja. 
 Resumindo o item 2: existem dependências funcionais, atributos que 
não são chaves primárias dependem funcionalmente de atributos que fazem 
parte da chave primária. Mas o detalhe importante é que a dependência é 
de somente um atributo que faz parte da chave, o que implica em 
dependência parcial em relação à chave primária de atributos não chave. 
 Com isso, concluímos que a tabela não segue a regra da 2FN. Então, a 
tabela está na 1FN. 
Resposta: D. 
 
6 – (FCC - AFRE RJ/SEFAZ RJ/2014) Instrução: Para responder à questão, 
considere o texto a seguir. 
Um funcionário ficou responsável pela elaboração de um modelo de dados e 
criação de um banco de dados para a Receita Estadual. O banco de dados 
deve controlar os funcionários da Receita, os departamentos aos quais estão 
vinculados e os projetos nos quais estão alocados, de acordo com a descrição: 
I. A Receita está organizada em departamentos. Cada departamento tem um 
nome único, um número único e um funcionário que gerencia o departamento. 
Há, ainda, a data em que o funcionário começou a gerenciar o departamento. 
II. Um departamento controla vários projetos. Cada projeto tem um nome 
único, um único número e uma única data de início. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 26 de 47 
www.exponencialconcursos.com.br 
III. Cada empregado tem um número único de CPF, um número de seguro 
social, endereço, sexo, salário e data de nascimento. 
IV. Todo empregado está alocado em um departamento, mas pode trabalhar 
em diversos projetos, mesmo que controlados por diferentes departamentos. 
Controla-se o número de horas que cada empregado trabalha em cada 
projeto. Controla-se o supervisor direto de cada empregado, que supervisiona 
seu trabalho. 
Está correlacionado corretamente o que está expresso em: 
 
Comentários: 
 Questão da última prova. Agora que já temos uma noção do modelo 
lógico, podemos resolvê-la, apesar de não ser muito necessário. 
 No item A já temos a resposta. Modelo conceitual seria o E-R. Projeto 
seria uma entidade, data_inicial seria atributo do relacionamento gerencia, e 
trabalha_em seria o relacionamento entre empregado e projeto. 
 Na letra B, supervisiona seria uma relação e não um atributo. 
 Na letra C, projeto não é atributoe sem entidade, além de projeto_N 
não ter muito sentido. 
 Na letra D, caso de uso não é utilizado para modelagem de banco de 
dados e sim de softwares. 
 Na letra E, Receita não seira uma entidade, pois não participa do BD. 
Resposta: A. 
 
7 – (FCC - Tec MPU/MPU/Informática/2007) No Modelo Relacional de 
Dados, 
a) não é possível criar chaves primárias compostas por dois ou mais campos. 
b) toda tabela tem que ter, obrigatoriamente, um campo do tipo Chave 
Primária. 
Tipo de modelo Exemplo de entidade Atributo Relacionamento
(A) conceitual projeto data_inicial trabalha_em
(B) conceitual empregado supervisiona é_supervisionado_por
(C) lógico departamento projeto projeto_N
(D) de caso de uso projeto nro_do_projeto gerencia
(E) lógico Receita CPF N_projetos_supervisionados
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 27 de 47 
www.exponencialconcursos.com.br 
c) recomenda-se a criação de tabelas com o maior número de campos 
possível, reduzindo com isso o número de tabelas do modelo. 
d) a Integridade Referencial é fundamental para manter a consistência dos 
dados e evitar os chamados Registros Órfãos. 
e) não se usa dados estruturados que possam ser modelados em termos de 
tabelas de dados. 
Comentários: 
a) não é possível criar chaves primárias compostas por dois ou mais campos. 
 Item incorreto. Como já vimos, não só podemos ter chaves primárias 
com mais de dois campos, como em alguns casos é a única forma de termos 
uma chave primária. 
b) toda tabela tem que ter, obrigatoriamente, um campo do tipo Chave 
Primária. 
 Item incorreto. Podemos ter mais de um campo formando a chave 
primária. 
c) recomenda-se a criação de tabelas com o maior número de campos 
possível, reduzindo com isso o número de tabelas do modelo. 
 Item incorreto. Como já vimos, devemos sempre evitar redundância de 
dados. A utilização de tabelas muito grandes normalmente leva à repetição de 
dados. O ideal é trabalhar com esquemas menores e números maiores de 
tabelas. Por isso utilizamos a normalização das tabelas. 
d) a Integridade Referencial é fundamental para manter a consistência dos 
dados e evitar os chamados Registros Órfãos. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 28 de 47 
www.exponencialconcursos.com.br 
 Item correto. Vamos relembrar os tipos de restrições de integridades:
 
 Caso não tenhamos a integridade referencial, podemos ter tabelas com 
chaves estrangeiras sem valor correspondente da respectiva chave primária 
na tabela primária do relacionamento. 
e) não se usa dados estruturados que possam ser modelados em termos de 
tabelas de dados. 
 Item incorreto. Dados estruturados são dados organizados em 
relações, onde os dados do mesmo tipo possuem o mesmo atributo, entre 
outras características. Como exemplo são os dados organizados em um SGBD 
em tabelas. Portanto, dados estruturados podem ser facilmente modelados em 
termos de tabela de dados. 
Resposta: D. 
 
8 – (FCC - Ana (CVM)/CVM/Sistemas/2003) Integridade referencial que 
define o comportamento das entidades, com relação às operações de inclusão, 
deleção e modificação, é um conjunto de regras de 
a) negócios. 
b) atributos. 
c) normalização. 
d) entidades. 
e) relacionamentos. 
Restrições de 
Integridade
Restrição de 
chave ou 
Integridade da 
chave 
a chave é obrigatória e 
única para cada tupla
Restrição de 
entidade ou 
integridade de 
entidade
chave primária não pode
ter valor NULL
Restrição de 
dominio ou 
integridade de 
dominio 
os valores dos atributos 
devem estar dentro de 
seu domínio
Integridade 
Referencial
garante que dados das 
chaves primárias devem 
ser iguais às chaves 
estrangeiras relacionadas
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 29 de 47 
www.exponencialconcursos.com.br 
Comentários: 
 A restrição de integridade referencial estabelece como deve funcionar o 
relacionamento entre a chave primária de uma tabela e a chave estrangeira de 
outra. Por isso, é uma regra de relacionamento entre chaves primária e 
estrangeira. 
 É importante comentar sobre as operações de inclusão, deleção e 
modificação nos casos em que há a restrição de integridade referencial. 
 Nos casos de inclusão de novas tuplas em uma tabela que contém a 
chave primária, é importante garantir que os dados sejam incluídos na tabela 
do relacionamento em que há uma chave estrangeira. 
 No caso da deleção de tuplas em uma tabela que contém a chave 
primária, é importante garantir que os dados que contenham o mesmo valor 
de chave estrangeira em outras tabelas também sejam deletados. 
 No caso de modificação de dados, não é diferente. Caso haja 
necessidade, os dados da tabela que contém a chave estrangeira deverão ser 
modificados. 
 São as chamadas ações em cascata. Caso a atualização ou remoção 
cause uma violação de restrição que não possa ser tratada por uma operação 
em cascata, o sistema aborta a transação. 
Resposta: E. 
 
 
9 - (FCC - Aux FF II (TCE-SP)/TCE-SP/2009) As entidades e o respectivo 
relacionamento do tipo empregado (E) e seus dependentes (D) serão 
implementados em um SGBD relacional normalizado como tabelas D e E, 
sendo que 
a) a chave primária de E é chave estrangeira em D, sem compor sua chave 
primária. 
b) a chave primária de E compõe parte da chave primária de D. 
c) as chaves primárias de D compõem parte da chave primária de E. 
d) as chaves primárias de D são chaves estrangeiras em E, sem compor sua 
chave primária. 
e) as chaves primárias de D são chaves estrangeiras em E e compõem, 
também, sua chave primária. 
Comentários: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 30 de 47 
www.exponencialconcursos.com.br 
 Mais uma questão com exemplo clássico de livros de BD, o 
relacionamento entre empregado e seus dependentes. O modelo E-R seria 
assim: 
 
 É uma relação 1:n, onde um empregado pode ter zero ou mais 
dependentes e cada dependente deve estar relacionado a pelo menos um 
empregado. Vamos montar o esquema: 
Empregado(cod_emp, nome) 
Relação_1(cod_rel,cod_emp,cod_dep) 
Dependente(cod_dep, nome_dep) 
 A tabela Relação_1 é totalmente desnecessária, é redundante. Por isso, 
incluiremos uma coluna em dependente e colocaremos o cod_emp, para 
podermos relacionar as entidades. 
 Empregado(cod_emp, nome) 
Dependente(cod_dep, cod_emp, nome_dep) 
 Neste caso teremos a chave primária de empregado sendo chave 
estrangeira em dependente e fazendo parte da chave primária. 
Resposta: B. 
 
10 - (FCC - AJ TRT2/TRT 2/Apoio Especializado/Análise de 
Sistemas/2004) A regra de integridade referencial, em que uma linha, ao 
ser excluída, provoca a exclusão também de todas as linhas dependentes, é: 
a) set delete. 
b) set exclude. 
c) linkage. 
d) chaining. 
e) cascade. 
Comentários: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 31 de 47 
www.exponencialconcursos.com.br 
 Como vimos, quando deletamos tuplas em uma tabela que contém a 
chave primária, é importante garantir que os dados que contenham o mesmo 
valor de chave estrangeira em outras tabelas também sejam deletados. 
 No caso de modificação de dados não é diferente. Caso haja 
necessidade os dados da tabela que contém a chave estrangeira deverão ser 
modificados. 
 Vimos que são conhecidas como ações em cascata ou, o termo em 
inglês, cascade. Caso a atualização ou remoção causeuma violação de 
restrição que não possa ser tratada por uma operação em cascata, o sistema 
aborta a transação. 
Resposta: E. 
 
11 – (FCC - AJ TRT3/TRT 3/Apoio Especializado/Análise de 
Sistemas/2005) No modelo relacional de banco de dados, cada linha é 
a) um domínio, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de atributo. 
b) uma relação, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de tupla; o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna é chamado de atributo. 
c) uma tupla, o nome de uma coluna é chamado de atributo e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de domínio. 
d) uma tupla, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de atributo. 
e) um domínio, o nome de uma coluna é chamado de atributo e uma tabela é 
chamada de tupla; o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna é chamado de relação. 
Comentários: 
 Questão fácil para relembrar os conceitos básicos do modelo relacional. 
a) um domínio, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de atributo. 
 Item incorreto. Vimos que cada linha é uma tupla, cada coluna é um 
atributo, e uma tabela é uma relação. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 32 de 47 
www.exponencialconcursos.com.br 
b) uma relação, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de tupla; o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna é chamado de atributo. 
 Item incorreto. Relação é a tabela, célula seria a interseção entre uma 
linha e uma coluna. 
c) uma tupla, o nome de uma coluna é chamado de atributo e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de domínio. 
 Item correto. 
d) uma tupla, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de atributo. 
 Item incorreto. A coluna é um atributo, o tipo dos valores que podem 
aparecer em uma coluna é o domínio. 
e) um domínio, o nome de uma coluna é chamado de atributo e uma tabela é 
chamada de tupla; o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna é chamado de relação. 
Item incorreto. Cada linha é uma tupla, tabelas são relações. 
Resposta: C. 
 
12 – (FCC - AJ TRT4/TRT 4/Apoio Especializado/Análise de 
Sistemas/2006) Um atributo multivalorado num diagrama E-R será 
mapeado em um modelo relacional 
a) por um conjunto variável de colunas na tabela, para as ocorrências do 
atributo. 
b) por duas colunas na tabela, uma para índice e outra para as ocorrências do 
atributo. 
c) criando-se na tabela uma linha nova, representando cada ocorrência do 
atributo. 
d) criando-se uma tabela nova para esse tipo de atributo. 
e) diretamente em uma única coluna da tabela. 
Comentários: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 33 de 47 
www.exponencialconcursos.com.br 
 Como vimos, para o modelo relacional, teremos sempre atributos 
atômicos. Por isso, teremos que adaptar os atributos multivalorados e os 
compostos do modelo E-R quando transportarmos para o modelo lógico. 
Para o caso de um atributo de valores múltiplos, são criados novos esquemas 
de relação R, e então criamos uma tupla para cada item em um conjunto de 
valores. Já vimos o exemplo do atributo número do telefone na questão 3. 
Portanto, o item D seria a resposta, criaríamos uma tabela nova com chave 
primária sendo o um código único mais o atributo. 
Resposta: D. 
 
13 – (FCC - TJ TRF2/TRF 2/Apoio Especializado/Informática/2012) 
Atenção: Na questão abaixo não foram usados acentos, símbolos ou espaços 
nos nomes das entidades e atributos, pois isto pode causar problemas em 
muitos dos softwares utilizados para implementar o modelo. 
Em um modelo entidade-relacionamento de uma clínica médica, observou-se 
um relacionamento N para N entre as entidades MEDICO e PACIENTE. Essas 
entidades são mostradas a seguir: 
 
Conversando com os funcionários da clínica foi obtido o seguinte relato: 
Quando o paciente deseja marcar uma consulta, ele liga para a clínica e a 
atendente agenda a consulta. O paciente pode passar por várias consultas 
com o mesmo médico, exceto na mesma data e hora. Finalizada a consulta, o 
médico faz o diagnóstico apenas daquela consulta. 
Considerando que a entidade ATENDENTE não faz parte do escopo do modelo 
desejado, na prática, ao criar o banco de dados, para que o relacionamento 
entre MEDICO e PACIENTE seja efetivamente estabelecido é necessário: 
a) uma tabela CONSULTA entre MEDICO e PACIENTE, fragmentando o 
relacionamento N para N identificado em dois relacionamentos 1 para N. A 
chave primária dessa tabela poderá ser composta pelos atributos CRMMedico, 
CodigoPaciente, DataConsulta e HoraConsulta. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 34 de 47 
www.exponencialconcursos.com.br 
b) definir a cardinalidade N para N ao relacionar as tabelas MEDICO e 
PACIENTE, de forma que ambas fiquem com uma chave primária composta 
pelos atributos CRMMedico e CodigoPaciente. 
c) definir a cardinalidade N para N ao relacionar as tabelas MEDICO e 
PACIENTE, pois todos os Sistemas Gerenciadores de Banco de Dados possuem 
suporte à criação de relacionamento direto N para N, 1 para N e 1 para 1. 
d) uma entidade intermediária entre MEDICO e PACIENTE, fragmentando o 
relacionamento N para N identificado em dois relacionamentos 1 para 1. A 
chave primária da nova entidade deverá obrigatoriamente ser composta pelos 
atributos CRMMedico e CodigoPaciente. 
e) uma entidade intermediária entre MÉDICO e PACIENTE, fragmentando o 
relacionamento N para N identificado em dois relacionamentos N para N. Essa 
entidade deverá obrigatoriamente ter como chave primária simples um 
atributo CodigoConsulta. 
Comentários: 
 A questão indica que: 
1 – o relacionamento entre paciente e consulta é 1:n. 
2 – o relacionamento entre médico e consulta é de 1:n. 
3 – temos uma terceira entidade: consulta. 
4 – “exceto na mesma data e hora” então data e hora farão parte da chave 
primária de consulta, já que a tornam única. 
 
 Com relação ao relacionamento entre paciente e consulta, a tabela 
deverá ser eliminada e será adicionada uma coluna em consulta para 
colocarmos a chave primária de paciente. Isto ocorre porque a tabela do 
relacionamento não tem grande serventia, servindo apenas para relacionar as 
duas entidades. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 35 de 47 
www.exponencialconcursos.com.br 
 Para otimizar o banco, criaremos uma coluna CodicoPaciente em 
consulta. O mesmo ocorre com o relacionamento entre médico e consulta. 
Criaremos outra coluna em cosulta para inserirmos a chave primária de 
médico, que é CRMMedico. Para identificar a chave no modelo da questão, 
basta ver o atributo com a chave ao lado ou verificar os atributos acima da 
linha que divide a tabela.As duas novas colunas farão parte da chave primária. A lógica seria que 
podem haver consultas com vários pacientes e com vários médicos na mesma 
data e horário. Então, para identificarmos a consulta, teremos que colocar os 
atributos chaves primárias de médico e paciente na chave primária de 
consulta. Estes atributos serão chave estrangeira e farão parte da chave 
primária em consulta. 
 O modelo lógico da questão será: 
 
Resposta: A. 
 
14 – (FCC - TJ TRF3/TRF 3/Apoio Especializado/Informática/2007) 
Na modelagem de banco de dados relacional, 
a) todos os tipos de relacionamento devem ser mapeados diretamente nas 
tabelas originais. 
b) somente o tipo de relacionamento N:N deve ser mapeado diretamente nas 
tabelas originais. 
c) os tipos de relacionamento 1:1 e 1:N devem ser mapeados diretamente nas 
tabelas originais e o tipo N:N exige ser mapeado por meio de tabela auxiliar. 
d) somente o tipo de relacionamento 1:1 deve ser mapeado diretamente nas 
tabelas originais. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 36 de 47 
www.exponencialconcursos.com.br 
e) todos os tipos de relacionamento exigem ser mapeados por meio de tabelas 
auxiliares. 
Comentários: 
 De um modo geral, se consultarmos a figura da questão 11, veremos 
que, no caso de relacionamentos 1:n e 1:1, normalmente utilizaremos as 
tabelas das entidades, e não criaremos uma tabela para o relacionamento. 
 Já no caso de n:n sempre criaremos uma tabela de relacionamento. 
Resposta: C. 
15 – (FCC - AFCE (TCE-PI)/TCE-PI/Ciência da Computação/2005) 
Dada a relação normalizada “Cliente compra Veículo” (um cliente compra 
diversos veículos, porém um veículo só pode ser comprado por um mesmo 
cliente, sem histórico) representada nas tabelas “Cliente” e “Veículo” 
 
A garantia de que as chaves estrangeiras da coluna Cod_Cli da Tabela 
“Veículo” correspondam fielmente às chaves primárias Cod_Cli da Tabela 
“Cliente”, de acordo com o modelo, é chamada de 
a) dependência iterativa. 
b) domínio. 
c) tupla. 
d) integração funcional. 
e) integridade referencial. 
Comentários: 
 Já vimos que a restrição de integridade referencial estabelece 
como deve funcionar o relacionamento entre a chave primária de uma 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 37 de 47 
www.exponencialconcursos.com.br 
tabela e a chave estrangeira de outra. Por isso, ela garante a 
correspondência entre os valores das chaves nas duas tabelas. 
Resposta: E. 
 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 38 de 47 
www.exponencialconcursos.com.br 
 
 
1 – (FCC - AFTM SP/Pref SP/Tecnologia da Informação/2012) 
Considere o seguinte projeto conceitual de um banco de dados: 
 
Para se construir o projeto lógico deste banco de dados, no mapeamento do 
relacionamento ExpostoEm e seus atributos, 
a) pode ser criada uma relação ExpostoEm, contendo como chaves 
estrangeiras as chaves primárias das relações correspondentes às entidades 
Produto, Loja e Lote e como atributos Unidade e Quantidade. 
b) os atributos Unidade e Quantidade podem ser adicionados à relação 
correspondente à entidade Lote. O atributo CodLote deve ser chave 
estrangeira nas relações correspondentes às entidades Produto e Loja. 
c) os atributos Unidade e Quantidade podem ser adicionados à relação 
correspondente à entidade Loja. O atributo CodLoja deve ser chave 
estrangeira nas relações correspondentes às entidades Produto e Lote. 
d) pode ser criada uma relação ExpostoEm, contendo como atributos 
CodExposicao, Unidade e Quantidade. O atributo CodExposicao é a chave 
primária desta relação e deve aparecer como chave estrangeira na relação 
correspondente à entidade Lote. 
e) pode ser criada uma relação ExpostoEm, contendo como atributos 
CodExposicao, Unidade e Quantidade. O atributo CodExposicao é a chave 
primária desta relação e deve aparecer como chave estrangeira nas relações 
correspondentes às entidades Produto, Loja e Lote. 
 
Lista de questões da aula 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 39 de 47 
www.exponencialconcursos.com.br 
2 – (FCC - AFR SP/SEFAZ SP/Gestão Tributária/2013) Instruções: Para 
responder à questão, considere o texto a seguir: 
A empresa Express conta com diversas equipes de desenvolvimento, nas áreas 
de software em geral, incluindo técnicas estruturadas e de orientação a 
objetos. Essas equipes estão em constante aperfeiçoamento, visando mantê-
las sempre atualizadas com as técnicas mais recentes da engenharia de 
software, incluindo-se aí a área de bancos de dados. 
A Express atende clientes de diversos perfis, abrangendo pequenas, médias e 
grandes empresas. Dessa forma, os sistemas de computação solicitados 
também atendem a esse perfil, compreendendo sistemas de pequeno, médio e 
grande porte. 
A Express conta com equipes especializadas, de grande experiência nas áreas 
acima destacadas, estando, portanto, apta a atender desde um simples 
produto até um grande sistema de software. Dessa forma, os produtos 
desenvolvidos pela Express possuem, normalmente, uma qualidade bastante 
apurada, o que pode ser verificado pelas diversas técnicas existentes. 
Uma das normas da Express é a de produzir documentação de excelente 
qualidade, cuja finalidade é, não apenas para entrega aos clientes, mas 
também para possibilitar a manutenção adequada dos produtos desenvolvidos. 
No projeto de seus bancos de dados, a Express faz uso da modelagem 
relacional, na qual é necessário definir os domínios dos atributos de uma 
relação. Um domínio é considerado atômico se, na aplicação em questão, 
a) o comprimento máximo de seus valores tiver até 255 caracteres. 
b) seus elementos forem considerados como indivisíveis. 
c) não houver caractere especial nos valores dos atributos, tais como $ e @. 
d) forem admitidos apenas letras e espaços como caracteres válidos. 
e) não forem admitidos valores nulos. 
 
3 – (FCC - AFRE RJ/SEFAZ RJ/2014) Instrução: Para responder à questão, 
considere o texto a seguir. 
Um funcionário ficou responsável pela elaboração de um modelo de dados e 
criação de um banco de dados para a Receita Estadual. O banco de dados 
deve controlar os funcionários da Receita, os departamentos aos quais estão 
vinculados e os projetos nos quais estão alocados, de acordo com a descrição: 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 40 de 47 
www.exponencialconcursos.com.br 
I. A Receita está organizada em departamentos. Cada departamento tem um 
nome único, um número único e um funcionário que gerencia o departamento. 
Há, ainda, a data em que o funcionário começou a gerenciar o departamento. 
II. Um departamento controla vários projetos. Cada projeto tem um nome 
único, um único número e uma única data de início. 
III. Cada empregado tem um número único de CPF, um número de seguro 
social, endereço, sexo, salário e data de nascimento. 
IV. Todo empregado está alocado em um departamento, mas pode trabalhar 
em diversos projetos, mesmo que controlados por diferentes departamentos. 
Controla-se o número de horas que cada empregado trabalha em cada 
projeto. Controla-se o supervisor direto de cada empregado, que supervisiona 
seu trabalho. 
Considere: 
− Existe a tabela FUNCIONARIO, cuja chave primária é CPF. 
− Existe a tabela DEPARTAMENTO cuja chave primária é NUMERODEP. 
− O campo NDEP da tabela FUNCIONARIOrefere-se ao número do 
departamento ao qual um funcionário está alocado. 
− O valor de NDEP em qualquer tupla da tabela FUNCIONARIO deve 
corresponder a um valor da chave primária da tabela DEPARTAMENTO em 
alguma tupla desta tabela. 
O campo NDEP pode ser 
a) a chave estrangeira na tabela FUNCIONARIO em relação à tabela 
DEPARTAMENTO. 
b) a chave secundária da tabela DEPARTAMENTO. 
c) a segunda chave primária da tabela FUNCIONARIO em relação à tabela 
DEPARTAMENTO. 
d) a chave estrangeira na tabela DEPARTAMENTO em relação à tabela 
FUNCIONARIO. 
e) o atributo referencial da superchave da tabela DEPARTAMENTO. 
 
4 – (FCC - AFR SP/SEFAZ SP/Tecnologia da Informação/2009) 
Considere a afirmativa a seguir. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 41 de 47 
www.exponencialconcursos.com.br 
Uma tabela está na .....I.... , se e somente se ela estiver na ....II... e os 
atributos não-chave forem .....III... . 
I, II e III podem ser corretamente preenchidos por: 
a) 2FN 1FN totalmente dependentes da totalidade da chave primária 
b) 2FN 1FN totalmente dependentes de parte da chave primária 
c) FNBC 1FN totalmente dependentes da totalidade da chave primária 
d) 3FN 2FN independentes da chave primária 
e) 3FN 1FN totalmente dependentes de parte da chave primária 
 
5 – (FCC - AFTM SP/Pref SP/Tecnologia da Informação/2012) A 
seguinte relação ProdLoja define para cada tupla um produto em uma loja, 
especificando a quantidade do produto na loja, o código e nome do produto e 
o código, nome e localização da loja. O domínio de todos os atributos da 
relação só pode incluir valores atômicos. Existem dependências funcionais 
entre os atributos CodProd e NomeProd e entre CodLoja e NomeLoja e 
LocalLoja. A chave primária é composta pelos atributos CodProd e CodLoja. 
 
Das três primeiras formas normais de relações baseadas em chaves primárias, 
esta relação respeita a 
a) primeira e a terceira formas normais. 
b) primeira, a segunda e a terceira formas normais. 
c) primeira e a segunda formas normais. 
d) primeira forma normal. 
e) segunda e a terceira formas normais. 
 
6 – (FCC - AFRE RJ/SEFAZ RJ/2014) Instrução: Para responder à questão, 
considere o texto a seguir. 
Um funcionário ficou responsável pela elaboração de um modelo de dados e 
criação de um banco de dados para a Receita Estadual. O banco de dados 
deve controlar os funcionários da Receita, os departamentos aos quais estão 
vinculados e os projetos nos quais estão alocados, de acordo com a descrição: 
ProdLoja
CodProd CodLoja Quantidade NomeProd NomeLoja LocalLoja
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 42 de 47 
www.exponencialconcursos.com.br 
I. A Receita está organizada em departamentos. Cada departamento tem um 
nome único, um número único e um funcionário que gerencia o departamento. 
Há, ainda, a data em que o funcionário começou a gerenciar o departamento. 
II. Um departamento controla vários projetos. Cada projeto tem um nome 
único, um único número e uma única data de início. 
III. Cada empregado tem um número único de CPF, um número de seguro 
social, endereço, sexo, salário e data de nascimento. 
IV. Todo empregado está alocado em um departamento, mas pode trabalhar 
em diversos projetos, mesmo que controlados por diferentes departamentos. 
Controla-se o número de horas que cada empregado trabalha em cada 
projeto. Controla-se o supervisor direto de cada empregado, que supervisiona 
seu trabalho. 
Está correlacionado corretamente o que está expresso em: 
 
 
7 – (FCC - Tec MPU/MPU/Informática/2007) No Modelo Relacional de 
Dados, 
a) não é possível criar chaves primárias compostas por dois ou mais campos. 
b) toda tabela tem que ter, obrigatoriamente, um campo do tipo Chave 
Primária. 
c) recomenda-se a criação de tabelas com o maior número de campos 
possível, reduzindo com isso o número de tabelas do modelo. 
d) a Integridade Referencial é fundamental para manter a consistência dos 
dados e evitar os chamados Registros Órfãos. 
e) não se usa dados estruturados que possam ser modelados em termos de 
tabelas de dados. 
 
8 – (FCC - Ana (CVM)/CVM/Sistemas/2003) Integridade referencial que 
define o comportamento das entidades, com relação às operações de inclusão, 
deleção e modificação, é um conjunto de regras de 
Tipo de modelo Exemplo de entidade Atributo Relacionamento
(A) conceitual projeto data_inicial trabalha_em
(B) conceitual empregado supervisiona é_supervisionado_por
(C) lógico departamento projeto projeto_N
(D) de caso de uso projeto nro_do_projeto gerencia
(E) lógico Receita CPF N_projetos_supervisionados
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 43 de 47 
www.exponencialconcursos.com.br 
a) negócios. 
b) atributos. 
c) normalização. 
d) entidades. 
e) relacionamentos. 
9 - (FCC - Aux FF II (TCE-SP)/TCE-SP/2009) As entidades e o respectivo 
relacionamento do tipo empregado (E) e seus dependentes (D) serão 
implementados em um SGBD relacional normalizado como tabelas D e E, 
sendo que 
a) a chave primária de E é chave estrangeira em D, sem compor sua chave 
primária. 
b) a chave primária de E compõe parte da chave primária de D. 
c) as chaves primárias de D compõem parte da chave primária de E. 
d) as chaves primárias de D são chaves estrangeiras em E, sem compor sua 
chave primária. 
e) as chaves primárias de D são chaves estrangeiras em E e compõem, 
também, sua chave primária. 
 
10 - (FCC - AJ TRT2/TRT 2/Apoio Especializado/Análise de 
Sistemas/2004) A regra de integridade referencial, em que uma linha, ao 
ser excluída, provoca a exclusão também de todas as linhas dependentes, é: 
a) set delete. 
b) set exclude. 
c) linkage. 
d) chaining. 
e) cascade. 
 
11 – (FCC - AJ TRT3/TRT 3/Apoio Especializado/Análise de 
Sistemas/2005) No modelo relacional de banco de dados, cada linha é 
a) um domínio, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de atributo. 
http://www.exponencialconcursos.com.br/
Curso: Informática p/ ICMS RJ 
Teoria e Questões Comentadas 
Prof. Gustavo Cavalcante - Aula 06 
 
Prof. Gustavo Cavalcante 44 de 47 
www.exponencialconcursos.com.br 
b) uma relação, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de tupla; o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna é chamado de atributo. 
c) uma tupla, o nome de uma coluna é chamado de atributo e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de domínio. 
d) uma tupla, o nome de uma coluna é chamado de célula e uma tabela é 
chamada de relação; o tipo de dado que especifica o tipo dos valores que 
podem aparecer em uma coluna é chamado de atributo. 
e) um domínio, o nome de uma coluna é chamado de atributo e uma tabela é 
chamada de tupla; o tipo de dado que especifica o tipo dos valores que podem 
aparecer em uma coluna é chamado de relação. 
 
12 – (FCC - AJ TRT4/TRT 4/Apoio Especializado/Análise de 
Sistemas/2006) Um atributo multivalorado num diagrama E-R será 
mapeado em um modelo relacional 
a) por um conjunto variável de colunas na tabela, para as ocorrências do 
atributo. 
b) por duas colunas na tabela, uma para índice e outra para as ocorrências do 
atributo. 
c) criando-se na tabela uma linha nova, representando cada ocorrência do 
atributo. 
d) criando-se uma tabela nova para esse tipo de atributo. 
e) diretamente em uma única coluna da tabela.