Vous êtes sur la page 1sur 141

Aula 04

Tecnologia da Informação p/ ICMS/SP - 2017 (Gestão Tributária)

Professor: Victor Dalton


Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
AULA 04: Bancos de dados

SUMÁRIO PÁGINA
1.Bancos de Dados: Conceitos Básicos 2
1.1 Definições 2
1.2 SGBD 4
1.3 Características de um banco de dados 6
1.4 Trabalhadores envolvidos 9
1.5 Vantagens da abordagem SGBD 12
1.6 Desvantagens da abordagem SGBD 13
1.7 Arquitetura três esquemas de um SGBD 13
1.8 Categorias de modelos de dados 16
1.9 Tipos de modelos de dados 19
1.10 Modelo Entidade-Relacionamento 23
1.11 Cardinalidade 26
1.12 Modelo Relacional 38
1.13 Gerenciamento de Transações 49
1.14 Catálogo de Dados 50
1.15 Views 52
1.16 Normalização de dados 55
Exercícios Comentados 61
Considerações Finais 112
Exercícios 113
Gabarito 140

Olá pessoal!

Vamos ministrar Banco de Dados. Particularmente acho a matéria muito


interessante. É o tipo de assunto que, uma vez aprendido, dificilmente os
conhecimentos básicos saem da cabeça.

Já sei que você se assustou com o tamanho da apostila! Mas BD é um assunto


extenso mesmo, é bom digeri-lo aos poucos.

Vamos ao que interessa?

Observação importante: este curso é protegido por direitos


autorais (copyright), nos termos da Lei 9.610/98, que altera,
atualiza e consolida a legislação sobre direitos autorais e dá
outras providências.

Grupos de rateio e pirataria são clandestinos, violam a lei e


prejudicam os professores que elaboram os cursos. Valorize o
trabalho de nossa equipe adquirindo os cursos honestamente
através do site Estratégia Concursos ;-)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 1 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
BANCOS DE DADOS

1. BANCOS DE DADOS: CONCEITOS BÁSICOS

1.1 Definições

Antes do estudo de SGBDs propriamente dito, cabe destacar a


diferença entre dado, informação e conhecimento.

Um dado é uma informação quantificada. Ex: Paulo tem 23 anos.

Uma informação é uma abstração produzida a partir dos dados. Ex:


Muitos dos nossos clientes são jovens (informação), uma vez que 80% dos
nossos clientes cadastrados possuem entre 18 e 25 anos (dado).

Conhecimento, por sua vez, envolve uma abstração em um nível


mais profundo, tomando por base os dados e as informações, como forma
de subsidiar decisões. Ex: O nosso produto atrai muitos jovens
(conhecimento extraído com base em dados e informações). Precisamos
enfatizar nosso marketing nesse público alvo, ou precisamos modificar
nosso produto para atingir outras faixas etárias (decisões de negócio), etc.
Veremos mais sobre produção de conhecimento em Sistemas de Apoio à
Decisão.

Entendidos esses aspectos, podemos responder o que é Banco de


Dados.

Acredito que você já tenha uma “desconfiança” do que seja um banco


de dados. Entretanto, a definição correta de banco de dados gira em torno
de duas ideias chave: relacionamento e finalidade.

Um banco de dados é um conjunto de dados relacionados com uma


finalidade específica. Esta finalidade pode a produção de informação, para
determinado público alvo (uma empresa, ou um órgão público, por
exemplo), bem como suportar um negócio (como o estoque de produtos de
um fornecedor, ou um cadastro de funcionários, ou tudo isso junto).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 2 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Um banco de dados tem alguma fonte da qual o dado é derivado,


algum grau de interação com eventos no mundo real e um público
interessado no seu conteúdo. Para que um banco de dados seja preciso e
confiável o tempo todo, as mudanças no minimundo (mundo real) precisam
ser refletidas nele o mais breve possível.

Um banco de dados pode ter qualquer tamanho e complexidade. As


informações precisam ser organizadas e gerenciadas de modo que os
usuários possam consultar, recuperar e atualizar os dados quando
necessário.

Um banco de dados pode ser gerado e mantido manualmente ou


computadorizado. Um banco de dados computadorizado pode ser criado e
mantido por um grupo de programas de aplicação específicos para essa
tarefa ou por um sistema gerenciador de banco de dados.

Eu costumo brincar, e acho que isso ajuda a memorizar, que não se


deve confundir Banco de Dados com “Bando de Dados”. Dados
desorganizados não servem para nada; um conjunto dados que se
relacionam, com alguma finalidade, esses sim compõem um Banco de
Dados.

Bancos de dados, normalmente, são a “base” de um sistema, ou


software. Um sistema de venda de produtos online, por exemplo,
provavelmente possui em seu banco de dados uma vasta quantidade de
registros de clientes e produtos. Esses dados provavelmente relacionam-
se através dos pedidos, que devem conter dados dos clientes e dos
produtos. Os pedidos também serão dados. Começou a visualizar?

Nossa próxima definição importante é a de Esquema de Banco de


Dados.

Um esquema do banco de dados é uma coleção de objetos de um


banco de dados que estão disponíveis para um determinado usuário ou
grupo. Os objetos de um esquema são estruturas lógicas que se referem
diretamente aos dados do banco de dados. Eles incluem estruturas, tais
como tabelas, visões, seqüências, procedimentos armazenados, sinônimos,
índices, agrupamentos e links de banco de dados. Falaremos mais sobre
esses elementos ao longo da apostila, fique tranquilo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 3 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Ou seja, ao se elaborar um sistema, seu projeto de banco de dados é


idealizado em um esquema (como a figura acima).

Falei, pouco antes, que os softwares normalmente estão “em cima” de


um Banco de Dados. O esquema é essa ferramenta utilizada para a
representação do banco como um todo, podendo servir tanto para facilitar
o entendimento do Banco de Dados como para implementar o próprio
Banco de Dados.

Com base no esquema acima, por exemplo, um Administrador de


Dados já consegue criar o Banco. Visualize a imagem acima, veja as tabelas
e os relacionamentos, e não se incomode se estiver entendendo pouco ou
quase nada. Iremos ver e rever essa imagem, explicando os detalhes dela
aos poucos. Tudo bem?

1.2 SGBD

Imagine agora um sistema de uma grande vendedora de produtos


online, ou mesmo o sistema de vendas de uma grande companhia aérea.
Essas empresas vendem produtos e serviços por segundo, para usuários
distribuídos geograficamente pelo mundo inteiro. Deste simples exemplo,
percebe-se que Bancos de Dados precisam de gerenciamento próprio, e
eficiente, para coordenar um volume gigantesco de operações simultâneas.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 4 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Para tal, existem os Sistemas Gerenciadores de Bancos de Dados.
O SGBD é o conjunto de programas de computador (softwares)
responsáveis pelo gerenciamento de uma (ou mais) base de dados.
Seu principal objetivo é retirar da aplicação cliente (o sistema da empresa
propriamente dito) a responsabilidade de gerenciar o acesso, a
manipulação e a organização dos dados. O SGBD disponibiliza uma
interface para que seus clientes possam incluir, alterar ou consultar dados
previamente armazenados. Em bancos de dados relacionais a interface é
constituída pelas APIs (Application Programming Interface) ou drivers do
SGBD, que executam comandos na linguagem SQL (Structured Query
Language).

Certamente você já ouviu falar de alguns SGBDs, como o Oracle, o


IBM DB2, o Microsoft SQL Server, MySQL, ou até mesmo o
PostgreSQL, que é gratuito.

Sistemas Gerenciadores de Bancos de Dados: softwares comerciais.

Os SGBDs facilitam o processo de definição, construção, manipulação


e compartilhamento de bancos de dados entre diversos usuários e
aplicações.
Definir um banco de dados envolve especificar os tipos, estruturas e
restrições dos dados a serem armazenados.
Construir um banco de dados é o processo de armazenar os dados
em algum meio controlado pelo SGBD.
Manipular um banco de dados inclui funções no banco de dados como
consultas para recuperar dados específicos, atualização que reflita
mudanças no minimundo e geração de relatórios com base nos dados.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 5 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Compartilhar banco de dados é permitir que diversos usuários e
programas acessem-no simultaneamente.
Outras funções importantes fornecidas pelo SGBD incluem proteção e
manutenção do banco de dados por um longo período. A proteção pode ser
contra defeitos (falhas) de hardware e software ou contra acesso não
autorizado ou malicioso (segurança). A manutenção permite a evolução do
sistema de banco de dados ao longo do ciclo de vida, à medida que os
requisitos mudem com o tempo.

Sistema de Banco de Dados: ilustração

1.3 Características de um banco de dados

Na abordagem de banco de dados, um único repositório mantém dados


que são definidos uma vez e depois acessados por vários usuários. Os
nomes ou rótulos de dados são definidos uma vez, e usados repetidamente
por consultas, transações e aplicações.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 6 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Natureza de Autodescrição de um Sistema de Banco de Dados

Na abordagem de banco de dados, seu sistema contém não apenas o


banco de dados, mas também uma definição ou descrição completa de sua
estrutura e restrições.

Essa definição é armazenada no catálogo do SGBD (falaremos mais


sobre ele adiante). A informação armazenada no catálogo é chamada
metadados (também será melhor explicado posteriormente).

O catálogo é usado pelo software de SGBD e também pelos usuários


do banco de dados que precisam de informações sobre a estrutura do banco
de dados (tipo e o formato dos dados). O software SGBD precisa trabalhar
de forma satisfatória com qualquer quantidade de aplicações de banco de
dados.

Isolamento Entre Programas e Dados, e Abstração de Dados

Na maioria dos casos, qualquer mudança na estrutura de dados do


SGBD não exige mudanças nos programas que acessam o banco de dados.
A estrutura dos arquivos de dados é armazenada no catálogo do SGBD
separadamente dos programas de acesso.

Essa propriedade é chamada de independência programa-dados.

Em alguns tipos de sistemas de banco de dados os usuários podem


definir operações (funções ou métodos) sobre como os dados como parte
das definições de banco de dados. A interface de uma operação inclui o
nome da operação e os tipos de dados de seus argumentos (parâmetros).
A implementação (método) da operação é especificada separadamente e
pode ser alterada sem afetar a interface. Isso é chamado de
independência programa-operação.

A independência programa-dados e a independência programa-


operação só são possíveis em virtude de uma característica do SGBD, que
é a abstração de dados.

Um SGBD oferece aos usuários uma representação conceitual de


dados, que não inclui muitos detalhes de como os dados são armazenados

Prof. Victor Dalton


www.estrategiaconcursos.com.br 7 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
ou como as operações são implementadas. Um modelo de dados é um tipo
de abstração de dados usado para oferecer essa representação conceitual.

Na abordagem de banco de dados, a estrutura detalhada e a


organização de cada arquivo são armazenadas no catálogo. Os usuários do
banco de dados e os programas de aplicação se referem à representação
conceitual dos arquivos, e o SGBD extrai os detalhes do armazenamento
do arquivo do catálogo quando estes são necessários para os módulos de
acesso a arquivo do SGBD.

Suporte para Múltiplas Visões dos Dados

Cada usuário do banco de dados pode exigir um ponto de vista ou


visão (view) diferente do banco de dados. Uma visão pode ser um
subconjunto do banco de dados ou conter dado virtual que é derivado dos
arquivos de banco de dados, mas não estão armazenados explicitamente.
Um SGBD multiusuário precisa oferecer facilidades para definir
múltiplas visões.

Compartilhamento de Dados e Processamento de Transação


Multiusuário

Um SGBD multiusuário precisa permitir que múltiplos usuários


acessem o banco de dados ao mesmo tempo. O SGBD precisa incluir um
software de controle de concorrência para garantir que vários usuários
tentando atualizar o mesmo dados faça isso de uma maneira controlada,
de modo que o resultado dessas atualizações seja correto. Esses tipos de
aplicações são chamados OLTP (On-Line Transaction Processing,
processamento de transações on-line).

Por exemplo, se vários agentes de viagem tentam reservar um assento


em um voo de uma companhia aérea. O SGBD precisa garantir que cada
assento só possa ser acessado por um agente de cada vez para que seja
atribuído a um único passageiro.

Um papel do software SGBD multiusuário é garantir que as transações


concorrentes operem de maneira correta e eficiente.

Uma transação é um programa em execução ou processo que inclui


um ou mais acessos ao banco de dados, como a leitura ou atualização de
seus registros. Uma transação executa um acesso logicamente correto a

Prof. Victor Dalton


www.estrategiaconcursos.com.br 8 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
um banco de dados quando ele é executada de forma completa e sem
interferência de outras operações. Também falaremos adiante sobre
Gerenciamento de Transações.

1) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Um SGBD


multiusuário deve permitir que diversos usuários acessem o banco de
dados ao mesmo tempo. Isso é essencial se os dados para as várias
aplicações estão integrados e mantidos em um único banco de dados. O
SGBD deve incluir um software de controle de concorrência para garantir
que muitos usuários, ao tentar atualizar o mesmo dado, o façam de um
modo controlado, para assegurar que os resultados das atualizações sejam
corretos. Por exemplo, quando muitos atendentes tentam reservar um
lugar em um voo, o SGBD deve garantir que cada assento possa ser
acessado somente por um atendente de cada vez, para fazer a reserva de
apenas um passageiro.

Em SGBD, a este conceito se dá o nome de

a) acesso simultâneo.
b) semáforo de acesso.
c) transação.
d) modularização.
e) polimorfismo.

Percebeu que a questão se parece muito com a explicação da teoria?

Isso ocorre porque a FCC também se baseou no Elmasri e Navathe para


apresentar o exemplo. No caso, a banca está explicando o conceito de
Processamento de Transação Multiusuário.

Não gostei da forma que a banca apresentou as alternativas, porém, a


“mais correta” é a letra c).

1.4 Trabalhadores envolvidos

Sistemas de Bancos de Dados são projetados, administrados e


utilizados por diversos profissionais. Sem exageros, pode-se visualizar um

Prof. Victor Dalton


www.estrategiaconcursos.com.br 9 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
“ciclo de vida” para um Sistema de Banco de Dados, com a participação de
diversos personagens. São eles, segundo Elmasri e Navathe (2006):

Administradores de Banco de Dados

Em um ambiente de banco de dados o banco de dados é o recurso


principal, e o SGBD e os softwares são os recursos secundários. A
administração desses recursos é de responsabilidade do administrador de
banco de dados (DBA – database administrator). O DBA é responsável por:

Autorizar o acesso ao banco de dados.


Coordenar e monitorar seu uso.
Adquirir recursos de software e hardware conforme a necessidade.
Responsável por resolver problemas, como falhas na segurança e
demora no tempo de resposta do sistema.

Projetista de Banco de Dados

Em muitos casos, os projetistas estão na equipe de DBAs e são


responsáveis por:

Identificar os dados a serem armazenados.


Escolher estruturas apropriadas para representar e armazenar os
dados.
Se comunicar com todos os potenciais usuários a fim de entender
suas necessidades e criar um projeto que as atenda.
Desenvolver visões do banco de dados que cumpram os requisitos
de dados e processamento de cada potencial grupo de usuários.

Usuários Finais (ou usuários do banco de dados)

O banco de dados existe primariamente para atender os usuários


finais. Existem várias categorias de usuários finais:

Casuais: são os gerentes de nível intermediário ou alto. Utilizam


uma linguagem sofisticada de consulta ao banco de dados para especificar
suas necessidades.
Iniciantes ou paramétricos: são os caixas de banco, agentes de
companhias aéreas, hotéis e locadoras de automóveis, funcionários nas

Prof. Victor Dalton


www.estrategiaconcursos.com.br 10 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
estações de recebimento de transportadores, entre outros. Sua função
principal gira em torno de consultar e atualizar o banco de dados
constantemente, usando transações programadas, que foram
cuidadosamente programadas e testadas.
Sofisticados: são os engenheiros, cientistas, analistas de negócios
e outros que estão profundamente familiarizados com as facilidades do
SGBD a ponto de implementar as próprias aplicações que atendam suas
necessidades.
Isolados: que mantêm bancos de dados pessoais usando pacotes
de programas prontos, que oferecem interfaces de fácil utilização, baseadas
em menu ou gráficos.

Atenção!

Date (2011) acrescenta a figura do Administrador de Dados(DA),


que seria uma pessoa que toma decisões estratégicas e de normas com
relação aos dados da empresa. Nessa abordagem, o DA teria atribuições
como:

 Levantar os requisitos funcionais para o banco de dados;


 Modelar conceitualmente o banco de dados;
 Especificar as regras de negócio das aplicações;
 Definir padrões de nomes para conceitos e variáveis, e
 Determinar normas de incorporação e manuseio dos dados.

Enquanto isso, o DBA acumularia as seguintes atribuições:

 Mapear o modelo conceitual no modelo lógico;


 Realizar o projeto físico do banco de dados;
 Criar usuários, definir visões e permissões, além de regras de
integridade;
 Controlar os processos de back-up e recuperação, e
 Garantir o bom desempenho no acesso e manuseio do banco
pelos usuários.

Importante, quando tratar-se de personagens envolvidos, prestar
atenção nesse detalhe, tentar “adivinhar” a bibliografia do enunciado, para
não confundir o Administrador de Dados com o Administrador de Banco de
Dados. Pior: até mesmo uma mesma banca pode cobrar conteúdo de
autores diferentes. Eu já vi isso .

Prof. Victor Dalton


www.estrategiaconcursos.com.br 11 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Analistas de Sistemas e Engenheiros de Software

Os analistas de sistemas identificam as necessidades dos usuários


finais, especialmente os iniciantes e paramétricos, e definem as
especificações das transações padrão que atendam a elas.

Os programadores de aplicações (engenheiros de software e


desenvolvedores de sistemas de software) implementam essas
especificações como programas, testam, depuram, documentam e mantêm
essas transações programadas.

1.5 Vantagens da abordagem SGBD

Via de regra, os SGBDs são ferramentas caríssimas, da ordem de


milhares de dólares. Algumas de suas vantagens são:

 Controle de redundância: quando os Bancos de Dados


precisam ser replicados em mais de um lugar, o SGBD evita a
inconsistência das diferentes bases de dados;
 Restrição a acesso não autorizado: em Bancos de Dados com
diferentes níveis de permissão de acesso, o SGBD realiza o
controle dos diversos níveis de permissão;
 Backup e restauração: o Sistema de Banco de Dados deve ser
tolerante a falhas, ou seja, o SGBD deve ser capaz de voltar a
um estado anterior à falha, a despeito de falhas de hardware ou
software;
 Forçar as restrições de integridade: os relacionamentos
entre dos dados são implementados por meio de restrições de
integridade. Será visto mais adiante.

1.6 Desvantagens da abordagem SGBD

Prof. Victor Dalton


www.estrategiaconcursos.com.br 12 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Instalar e manter Sistemas de Bancos de Dados carregam consigo


alguns ônus intrínsecos. São eles:

 Custos: além do preço elevado das ferramentas de SGBD,


manter um Sistema de Banco de Dados implica em hardware,
software e pessoal especializados;
 Gerenciamento Complexo: o Sistema necessita interfacear
com diferentes tecnologias, afetando os recursos e cultura da
empresa;
 Dependência do fornecedor: o investimento inicial alto tende
a “prender” o cliente. Modificar um SGBD é oneroso e complexo;
 Manutenção e atualização: como todo software, o SGBD deve
ser mantido atualizado. Além disso, periodicamente surgem
novas versões, com mais funcionalidades, “exigindo”
substituições periódicas, com novos custos de hardware,
software e treinamento de pessoal.

1.7 Arquitetura três esquemas de um SGBD

A arquitetura três esquemas é uma abordagem, que ilustra a


separação entre usuário e aplicação. Nesta arquitetura, os esquemas
podem ser descritos em três níveis:

Prof. Victor Dalton


www.estrategiaconcursos.com.br 13 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Arquitetura três esquemas, Elmasri e Navathe (2006)

Nível externo: abrange os esquemas externos, ou visões de usuário.


Cada esquema descreverá apenas a visão pertinente de cada usuário a
respeito do Banco de Dados, ocultando o restante. Por exemplo, para um
aluno, de um sistema de aulas online, somente determinada parte do BD
lhe é relevante, provavelmente relacionada aos cursos que realiza. Para um
administrador financeiro desse sistemas, por sua vez, aspectos
administrativos serão mais relevantes, relacionados aos pagamentos dos
cursos e de pessoal.

Nível conceitual: possui um esquema conceitual, que descreve o


banco de dados como um todo. Oculta detalhes do armazenamento físico,
enfatizando entidades, tipos de dados e restrições.

Nível interno: apresenta um esquema interno, descrevendo a


estrutura de armazenamento físicos do banco de dados.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 14 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

2) (FCC – MPE/SE – Analista – Gestão e Análise de Projeto de


Sistema - 2013) Em projetos de Banco de Dados, o objetivo da
arquitetura de três-esquemas é separar o usuário da aplicação do banco de
dados físico. Nessa arquitetura, os esquemas podem ser definidos por três
níveis:

I. O nível interno tem um esquema que descreve a estrutura de


armazenamento físico do banco de dados. Esse esquema utiliza um modelo
de dado físico e descreve os detalhes complexos do armazenamento de
dados e caminhos de acesso ao banco;

II. O nível conceitual possui um esquema que descreve a estrutura de todo


o banco de dados para a comunidade de usuários. O esquema conceitual
oculta os detalhes das estruturas de armazenamento físico e se concentra
na descrição de entidades, tipos de dados, conexões, operações de usuários
e restrições. Geralmente, um modelo de dados representacional é usado
para descrever o esquema conceitual quando o sistema de banco de dados
for implementado. Esse esquema de implementação conceitual é
normalmente baseado em um projeto de esquema conceitual em um
modelo de dados de alto nível;

III. O nível interno ainda abrange os esquemas externos ou visões de


usuários. Cada esquema interno descreve a parte do banco de dados que
um dado grupo de usuários tem interesse e oculta o restante do banco de
dados desse grupo. Como no item anterior, cada esquema é tipicamente
implementado usando-se um modelo de dados representacional,
possivelmente baseado em um projeto de esquema externo em um modelo
de dados de alto nível.

Está correto o que se afirma em

a) II, apenas.
b) II e III, apenas.
c) I, II e III.
d) I e II, apenas.
e) III, apenas.

Questão sem maiores dificuldades. Os itens I e II estão corretos, enquanto


o item III descreve o nível externo.

Alternativa d).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 15 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
1.7.1 Independência lógica e independência física dos
dados

Dois conceitos relacionados à arquitetura três esquemas que, não raro,


aparecem em questões de concursos são a independência lógica e a
independência física dos dados.

Independência lógica é a capacidade de alterar o esquema


conceitual sem precisar modificar os esquemas externos.

Independência física é a capacidade de alterar o esquema interno


sem precisar modificar o esquema conceitual.

Esses esquemas e seus respectivos mapeamentos são guardados no


catálogo do banco de dados. Ele será visto na próxima aula.

1.8 Categorias de modelos de dados

Projetar um banco de dados, como você provavelmente deve imaginar,


é uma atividade que requer planejamento e organização. Didaticamente,
pode-se dividir esta tarefa em etapas.

A primeira fase do projeto do banco é o levantamento e análise de


requisitos, que na prática, é a especificação das necessidades do
usuário do banco. Entrevista-se o usuário do banco para entendimento e
documentação dos seus requisitos de dados.

A segunda fase é o projeto conceitual, em que já se criam descrições


detalhadas de tipos de entidades, relacionamentos, atributos e restrições.
A modelagem conceitual empregada baseia-se no mais alto nível e deve
ser usada para envolver o cliente. Os exemplos de modelagem de dados
visto pelo modelo conceitual são mais fáceis de compreender, já que não
há limitações ou aplicação de tecnologia específica. O modelo normalmente
utilizado é o modelo entidade-relacionamento, com a construção do
Diagrama de Entidade e Relacionamento. Este diagrama é a chave para a
compreensão do modelo conceitual de dados. Cria-se o que chamamos de
“mini-mundo”, a observação da realidade mapeada dentro do sistema que

Prof. Victor Dalton


www.estrategiaconcursos.com.br 16 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
se deseja desenvolver. O modelo e-r é muito importante e será bastante
explorado nos exercícios.

Ilustração de modelagem conceitual usando o Diagrama E-R.

Posteriormente ocorre as especificações das necessidades


funcionais, depreendidas do próprio projeto conceitual. Caso exista algum
impedimento funcional para a implementação do banco, talvez seja
necessário voltar ao projeto conceitual e realizar algumas modificações.

Em seguida aparece o projeto lógico, ou mapeamento do modelo de


dados. A modelagem lógica (ou representacional, ou de
implementação), por sua vez, já realiza o mapeamento do esquema
conceitual para o modelo de dados que será usado. O modelo de dados de
implementação normalmente é o modelo de dados relacional, que
também é importantíssimo, muito cobrado em provas e será bastante
abordado nos exercícios. Tal projeto consolidará a escrita do script do
banco, com a criação do seu esquema.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 17 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Modelagem relacional: ilustração com tabelas e atributos

Por fim, temos o projeto físico, durante a qual são definidas as


estruturas de armazenamento interno, índices, caminhos de acesso e
organizações de arquivo para os arquivos do banco de dados. Já passa a
depender de regras de implementação e restrições tecnológicas.

Figura: Do modelo conceitual ao físico(MAXEY,2002)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 18 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

3) (FCC – MPE/AM – Agente de Apoio – Programador - 2013) Um


sistema de banco de dados deve apresentar um projeto que visa a
organização das informações e utilização de técnicas para que o futuro
sistema obtenha boa performance e também facilite as manutenções que
venham a acontecer.

O projeto de banco de dados se dá em, pelo menos, duas fases: Modelagem


conceitual e

a) Projeto lógico.
b) Teste de integração.
c) Instalação.
d) Definição da ferramenta que será adotada.
e) Teste de carga.

Após a Modelagem conceitual, temos o Projeto Lógico (ou Modelo Lógico).

Resposta: alternativa a).

1.9 Tipos de modelos de dados

Apoiando a estrutura de um banco de dados está o modelo de dados:


uma coleção de ferramentas conceituais para descrever dados, relações de
dados, semântica de dados e restrições de consistência. Um modelo de
dados oferece uma maneira de descrever o projeto de um banco de dados
no nível físico, lógico e de visão.

Existem vários modelos de dados diferentes. Vejamos alguns:

Modelo hierárquico: O modelo hierárquico foi o primeiro a ser


reconhecido como um modelo de dados. Nele, os registros são conectados
em uma estrutura de dados em árvore, similar a uma árvore invertida (ou
às raízes de uma árvore).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 19 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Neste modelo, uma ligação é uma associação entre dois registros.


O relacionamento entre um registro-pai e vários registros-filhos possui
cardinalidade 1:N, ou 1:1, sendo N =1. Os dados organizados segundo este
modelo podem ser acessados segundo uma sequência hierárquica com uma
navegação do topo para as folhas e da esquerda para direita. Um registro
pode até estar associado a vários registros diferentes, desde que seja
replicado.

Neste exemplo, perceba que os registros da tabela empregado


possuem hierarquia direta em relação aos registros da tabela
departamento.

O modelo hierárquico possui muitas limitações. Ele pode ser útil para
modelar esquemas fortemente hierárquicos (como classificações para
espécies dos reinos animal e vegetal, corporações, hierarquias
governamentais, etc.), mas apresenta limitações quando representa
modelos não-hierárquicos. Isto provocou o surgimento do modelo em rede.

Modelo em rede: o modelo em rede acabou eliminando a hierarquia,


pois passou a permitir que, em tese, cada registro filho pudesse ser ligado
a mais de um registro pai.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 20 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Nesse caso, a estrutura em árvore se desfaz, e passa a se assemelhar


a uma estrutura em grafo. Relacionamentos N:M também passam a ser
permitidos (lembrando que o relacionamento é estabelecido entre
registros).

Perceba que, neste modelo, é possível colocar um empregado


vinculado a mais de um departamento, o que não era possível no modelo
hierárquico.

Os modelos de dados em rede e hierárquicos precederam o modelo de


dados relacional, que é o mais utilizado atualmente. São muito pouco
utilizados nos dias de hoje, a não ser em bancos de dados antigos que ainda
estejam em vigor.

Modelo relacional: O modelo relacional usa uma coleção de tabelas


para representar os dados e as relações entre eles. Foi o modelo que eu
utilizei para explicar os conceitos básicos de banco de dados, e é o modelo
mais utilizado (e cobrado em provas). Cada tabela possui diversas colunas,
e cada coluna possui um nome único. Tabelas também são chamadas
de relações.(Deixei isso pra depois de propósito: não confunda relação
com os relacionamentos entre as tabelas). Cada tabela contém tuplas. Cada
tupla possui um número fixo de campos, ou atributos. As colunas das

Prof. Victor Dalton


www.estrategiaconcursos.com.br 21 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
tabelas correspondem aos atributos do tipo de registro. Este modelo é o
mais utilizado na fase de projeto lógico do BD.

Modelo Entidade/Relacionamento: O modelo de Entidade-


Relacionamento (E-R) é baseado na percepção de um mundo real que
consiste em uma coleção de objetos básicos, chamados entidades, e os
relacionamentos entre esses objetos (existem autores que falam em
relação para descrever relacionamentos. Preste atenção em uma eventual
questão de prova, para saber o que a banca quer). Uma entidade é uma
“coisa” ou “objeto” no mundo real que é distinguível dos outros objetos
(como pessoa, ou carro). É um modelo mais alto nível, empregado na fase
do projeto conceitual, que é anterior à fase do projeto lógico, no qual se
utiliza o modelo relacional. Também cai em provas.

Modelo de dados orientado a objetos: É uma extensão do modelo


ER com noções de encapsulamento de identidade do objeto (isso será visto
em programação).

Modelo de dados objeto-relacional: Combina características do


modelo relacional com o modelo orientado a objetos.

P.S: Não se surpreenda em ter visto os modelos relacional e entidade


relacionamento também neste tópico. Os tipos de modelos de dados
apresentados não deixam de ter um caráter histórico, refletindo a evolução
dos modelos ao longo do tempo. Por isso, os modelos relacional e E-R
acabaram se consolidando nas categorias vistas anteriormente.

4) (FCC – SEFAZ/PE – Auditor Fiscal – 2014) Um Sistema de


Gerenciamento de Banco de Dados (SGBD) é um software com recursos
específicos para facilitar a manipulação das informações dos bancos de
dados e o desenvolvimento de programas aplicativos. A forma como os
dados serão armazenados no banco de dados é definida pelo modelo do
SGBD. Os principais modelos são: hierárquico, em rede, orientado a objetos
e

(A) funcional.
(B) procedural.
(C) orientado a serviços.
(D) relacional.
Prof. Victor Dalton
www.estrategiaconcursos.com.br 22 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
(E) orientado a componentes.

Estudamos em detalhes o modelo relacional, um dos mais cobrados em


provas. As demais sentenças nem se aplicam a banco de dados.

Resposta certa: alternativa d).

1.10 O Modelo Entidade-Relacionamento

Aqui estamos diante de um diagrama ER, do modelo entidade-


relacionamento. Aquele mais conceitual, alto nível. Façamos uma breve
legenda:

Retângulos: são as entidades.


Losangos: representam os relacionamentos.
Elipses: representam os atributos (ausente neste diagrama).
Linhas: vinculam conjuntos de entidades a conjuntos de
relacionamentos.
Linhas duplas: indicam participação total de uma entidade em um
conjunto de relacionamentos.

Esta notação, de retângulos e losangos, também é chamada de


notação Chen, em homenagem ao seu autor, Peter Chen.

Esta abordagem, como você pode perceber, consegue mostrar para


um usuário, até mesmo o leigo em banco de dados, algumas características
Prof. Victor Dalton
www.estrategiaconcursos.com.br 23 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
desse banco hipotético, ilustrado no modelo. Dele, é possível compreender
que:

Empregados gerenciam departamentos;

Empregados trabalham em projetos;e

Departamentos controlam projetos (perceba as sentenças no


estilo entidade-relacionamento-entidade, em lógica de primeira ordem).

Perceba que, com as informações apresentadas, detalhes de


implementação do banco de dados ainda não são conhecidos. Quais são as
tabelas desse banco? Você ainda não sabe.

Um primeiro destaque nesse modelo, comumente cobrado em provas,


é a indicação de participação parcial ou participação total no
relacionamento, representados, respectivamente, por linhas simples em
duplas.

Uma participação parcial indica que aquele relacionamento não é


obrigatório para aquela entidade. Preste atenção apenas nesse trecho da
figura, abaixo:

A linha simples entre Empregado e Gerencia indica que não há


obrigatoriedade de que um empregado gerencie um departamento.

Por outro lado, a linha dupla em Departamento indica que todo


Departamento deve ter um Empregado que o gerencie. Compreendeu?

Fugindo um pouco do modelo E-R, mas, com o objetivo de fazê-lo


entender melhor essa obrigação (ou não), imagine uma fotografia de duas
tabelas de banco de dados com as seguintes informações:

Prof. Victor Dalton


www.estrategiaconcursos.com.br 24 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
EMPREGADO

CodEmpregado NomeEmpregado Gerente?

001 Marcos S

002 Paula N

003 Roberta S

004 Marcelo N

DEPARTAMENTO

CodDepartamento NomeDepartamento CodGerente

MKT Marketing 001

ADM Administração 003

Neste exemplo, materializei duas tabelas que mostram Marcos


gerenciando o Departamento de Marketing, e Roberta gerenciando o
Departamento de Administração. Do jeito que montei as tabelas, todo
departamento terá um gerente, mas nem todo empregado será gerente.
Razoável, não é mesmo?

P.S.: as fotografias das tabelas não fazem parte do modelo E-


R! Apenas estão aí para facilitar o seu entendimento!

O segundo aspecto importante, também retratado nas imagens, é a


questão da cardinalidade (1, N, M). Para tal, trataremos em tópico
específico.

5) (FCC – MPE/MA – Analista Ministerial – Banco de Dados - 2013)


Quando do projeto de um banco de dados relacional, pode haver a indicação
de que um conjunto de entidades tem participação total em um conjunto
de relacionamentos, isto significa que

a) cada entidade do conjunto de entidades participa em todos os


relacionamentos do conjunto de relacionamentos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 25 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
b) há, no mínimo, metade das entidades do conjunto de entidades que
participam em pelo menos um relacionamento do conjunto de
relacionamentos.
c) as entidades do conjunto de entidades não possuem atributos do tipo
booleano ou do tipo data.
d) cada entidade do conjunto de entidades participa em pelo menos um
relacionamento do conjunto de relacionamentos.
e) todos os atributos do conjunto de entidades são indexados com a técnica
de árvores binárias.

Participação total e parcial!

A linha dupla indica participação total, e a entidade ligada por linha dupla
exige que ela se relacione com pelo menos uma entidade do outro lado do
relacionamento. Já a linha simples indica o relacionamento, mas pode ser
que nem toda entidade possua um relacionamento.

Uma coisa ruim das bancas é não diferenciar entidade de instância de


entidade. Quando se fala da entidade Projeto, em tese, me refiro à
entidade projeto de modo genérico. Quando se fala de cada entidade
Projeto, na verdade estão se referindo às instâncias de entidade, que,
na prática, correspondem ao registros que estão no Banco de Dados,
conforme expliquei para você na teoria.

A questão seria bem mais clara se ela, ao invés de falar “cada entidade” do
“conjunto de entidades”, falasse “instância das entidades” das “entidades”.

Nossa resposta certa, alternativa d).

1.11 Cardinalidade

Podemos ver a mesma imagem novamente?

Prof. Victor Dalton


www.estrategiaconcursos.com.br 26 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

A cardinalidade serve para expressar o número de entidades que


uma entidade pode associar-se, por meio de um relacionamento.

A figura acima retrata os três tipos possíveis de cardinalidade.


Na cardinalidade (1:1), uma entidade E1 pode relacionar-se a, no
máximo, uma outra entidade E2, por meio de um relacionamento, e vice-
versa. É o caso entre Empregado e Departamento, ilustrado no tópico
anterior.

Na cardinalidade (1:N), uma entidade E1 pode relacionar-se com


várias entidades E2, porém, uma entidade E2 pode relacionar-se apenas
com uma entidade E1. É o que acontece entre Departamento e Projeto.
Preste atenção na imagem e na leitura das frases a seguir: um
Departamento pode controlar N Projetos, e um Projeto pode ser controlado
por um Departamento. Captou? Gostaria de enxergar isso em tabelas?

DEPARTAMENTO

CodDepartamento NomeDepartamento CodGerente

MKT Marketing 001

ADM Administração 003

PROJETO
Prof. Victor Dalton
www.estrategiaconcursos.com.br 27 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
CodProjeto NomeProjeto CodDepResponsavel

P01 Inovação MKT

P02 Reestruturação ADM

P03 Vender Mais MKT

P04 Novo Produto MKT

Captou? Do jeito que montei as tabelas, os Departamentos podem ter


vários projetos, mas cada projeto tem apenas um Departamento
responsável.

P.S.: as fotografias das tabelas não fazem parte do modelo E-


R! Apenas estão aí para facilitar o seu entendimento!

Por último, falemos da cardinalidade (N:M) ou (N:N). Nela, uma


entidade E1 pode relacionar-se com várias entidades E2, assim como uma
entidade E2 pode relacionar-se apenas com várias entidades E1. É o que
acontece entre Empregado e Projeto.

Um Empregado pode trabalhar em M Projetos, e um Projeto pode “ser


trabalhado” por N Empregados. Captou? Em tabelas, isso fica um pouco
diferente:

PROJETO

Prof. Victor Dalton


www.estrategiaconcursos.com.br 28 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
CodProjeto NomeProjeto CodDepResponsavel

P01 Inovação MKT

P02 Reestruturação ADM

P03 Vender Mais MKT

P04 Novo Produto MKY

EMPREGADO

CodEmpregado NomeEmpregado Gerente?

001 Marcos S

002 Paula N

003 Roberta S

004 Marcelo N

TRABALHA

CodEmpregado CodProjeto

001 P01

001 P02

002 P03

003 P01

Nesta estrutura, você percebe que a tabela Trabalha serve para


materializar o relacionamento entre Empregado e Projeto, e que, desta
forma, empregados podem trabalhar em vários projetos, e projetos podem
ter vários empregados, sem restrições.

Agora, reveja aquele esquema de banco de dados, do início da


apostila:

Prof. Victor Dalton


www.estrategiaconcursos.com.br 29 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

O relacionamento entre as tabela usuario e comentario indicam, do


lado usuario (1,1), e do lado comentario (0,n). Isso retrata um
relacionamento (1:N) entre essas entidades. Ou seja, Cada usuário
cadastrado na tabela usuario pode fazer de zero a muitos comentários.
Cada comentário, por sua vez, deverá ter sido feito por apenas um único
usuário, entendeu?

Mais um pouco: veja as tabelas usuario, usr_ai e area_interesse. A


tabela usuario possui um relacionamento de cardinalidade (1:N) com a
tabela usr_ai. Ou seja, isso implica que cada usuário pode ter zero ou mais
áreas de interesse. Por exemplo, Paulo pode se interessar por esportes,
ficção e romance.

Por sua vez, area_de_interesse possui um relacionamento de


cardinalidade (1:N) com a tabela usr_ai. Ou seja, isso implica que cada
área de interesse pode estar relacionada a zero ou mais usuários.

Captaram? Na realidade, existe um relacionamento de cardinalidade


(N:N), também chamado de (N:M), entre usuario e area_interesse. Só que,
para implementar o banco de dados de uma maneira organizada, foi
necessário fazer uma tabela de ligação entre usuario e area_interesse.

A cardinalidade pode ser expressada de diferentes formas, de acordo


com o modelo ilustrado. Inclusive, como no esquema acima, ficaram

Prof. Victor Dalton


www.estrategiaconcursos.com.br 30 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
explícitas as cardinalidades mínimas e máximas, uma vez que o esquema
não possui linhas simples e duplas para tal. Uma cardinalidade (1:N), por
exemplo, foi retratada pelos pares (1,1) e (0,n), indicando que uma
entidade E1 pode ser relacionar com 0 a n entidades E2, ao passo que uma
entidade E2 deve se relacionar com uma, e apenas uma entidade E1.
Compreendido?

1.11.1 Notação Engenharia da Informação (pé de galinha)

A notação Engenharia da Informação é uma forma alternativa de


representar entidades e relacionamentos no modelo E-R. Criada por James
Martin, é apelidada por notação pé-de-galinha, pelo símbolo característico
que representa a cardinalidade n. Vejamos um pouco sobre esta notação:

Entidades: retângulos

Atributos: dentro do retângulo

Relacionamentos: linhas, apenas.

Cardinalidades: linha simples representa 1, pé-de-galinha


representa N (na horizontal), circunferência representa relacionamento
opcional (cardinalidade mínima zero).

Veja o exemplo comparativo, abaixo, que ilustra bem a comparação


entre a notação Chen e a notação pé-de-galinha:

Prof. Victor Dalton


www.estrategiaconcursos.com.br 31 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Um relacionamento 1-1 é ilustrado, na notação pé-de-galinha, por duas listras verticais, “||“
(1-1). Zero é representado por “o” e N pelo “pé-de-galinha.”

6) (FCC – TRT/15ª Região – Técnico Judiciário – Tecnologia da


Informação – 2015) Para representar o relacionamento entre entidades
no modelo E-R, várias notações foram criadas, como a da Engenharia da
Informação, criada por James Martin. Com relação a esta notação,
considere o relacionamento abaixo.

Neste relacionamento,

(A) todo departamento cadastrado deverá ter, obrigatoriamente, pelo


menos, um empregado.
(B) um mesmo empregado pode estar associado a muitos departamentos.
(C) somente dois departamentos poderão ser cadastrados.
(D) somente três empregados poderão ser relacionados a cada
departamento.
(E) podem haver departamentos cadastrados sem nenhum empregado
relacionado a ele.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 32 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Compreendendo a notação, vemos que o relacionamento entre
Departamento e Empregado é (1-1) no lado Departamento e (0-n) do lado
Empregado.

Realizando a leitura apropriada, isto quer dizer que Departamento pode


possuir de zero a n empregados, e Empregado deve trabalhar em um e
somente um Departamento.

Por eliminação, a única alternativa correta é a alternativa e).

1.11.2 Modelo E-R Estendido (ou modelo EER)

O modelo EER adota tudo o que vimos anteriormente acerca do modelo


E-R, mas inclui os conceitos de subclasse, superclasse e herança, além
dos consequentes conceitos de especialização e generalização.

O modelo EER é mais adequado quando percebe-se que algumas


entidades podem ser especializadas ou generalizadas. Por exemplo,
suponha que o banco de dados de uma empresa irá cadastrar seus
Funcionários. Todos eles possuem um nome e um código, porém, aqueles
que forem Engenheiros terão um número de CREA, e aqueles que forem
Médicos terão um CRM e uma especialidade.

Portanto, uma conduta interessante seria transformar Funcionário


em uma superclasse, mantendo nele os atributos comuns às subclasses
Engenheiro e Médico.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 33 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Especialização de Funcionário em Engenheiro e Médico, utilizando a notação EER.

Engenheiro e Médico herdam os atributos comuns de Funcionário.


Assim sendo, Engenheiro e médicos são especializações da entidade
Funcionário, em uma abordagem top-down. Se Funcionário fosse uma
classe criada “após” a criação das entidades Médico e Engenheiro, em uma
abordagem bottom-up, diríamos que houve uma generalização das
classes citadas. Tranquilo? Vejamos outro exemplo abaixo:

Prof. Victor Dalton


www.estrategiaconcursos.com.br 34 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Pagamento: no crediário ou no cartão?

Pagamento é uma superclasse, e Crediario e Cartao são subclasses


que especializam Pagamento.

Neste caso há uma sutil variação na notação, substituindo o triângulo


por uma circunferência, e com duas “setas” circulares apontando para as
classes herdeiras. Tais classes são chamadas assim porque elas herdam os
atributos das superclasses (os atributos das superclasses são atributos
comuns, pertencentes também às subclasses).

A generalização/especialização pode ocorrer segundo quatro variáveis,


combinadas duas a duas. Ela pode ser exclusiva (também chamada
disjunta) ou compartilhada, bem como total ou parcial. Os exemplos
abaixo elucidarão essas características.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 35 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Compartilhado (c): pessoas podem ser funcionários e associados simultaneamente.

Exclusiva ou disjunta (x ou d): se uma mídia é livro, ela não pode ser DVD, e vice-versa.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 36 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Total (t): todas as pessoas são funcionários ou associados.

Parcial (p): nem todas as mídias são livros ou DVDs.

Assim sendo, são possíveis combinações XT, XP, CT e CP.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 37 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

1.12 Modelo Relacional

Vamos agora tratar do modelo relacional.

Apenas relembrando, o modelo relacional está ligado ao Projeto


Lógico, aquele em um nível intermediário entre o modelo conceitual e o
modelo físico. Está lembrado?

Vamos ver aquele esquema novamente:

Creio que você já o entenda mais do que quando o viu pela primeira
vez. Mas vamos entendê-lo ainda mais, pois ele está carregado de
informações do modelo relacional.

Perceba que as tabelas (que também podem ser chamadas de


relações) são os principais elementos do banco. comentario, contato,
categoria, recado, area_interesse...

Os atributos são componentes das entidades. Na entidade


comentário, por exemplo, temos os atributos código, conteudo,
data_criacao, cod_usuario_remetente e cod_arquivo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 38 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
As informações colocadas ao lado dos atributos, conforme visualizado
neste esquema, são os metadados. Código será um inteiro de até 11
dígitos, conteúdo será um varchar com até 1000 caracteres (varchar,
basicamente, quer dizer que o número de caracteres é variável, indo até o
limite estabelecido), data_criacao será uma informação do tipo data-hora,
e assim sucessivamente.

Por fim, temos os registros da tabela, ou tuplas. Registros e tuplas


são sinônimos. A imagem acima, utilizada como exemplo, é um modelo que
mostra o que deverá conter no banco. O banco de dados, efetivamente,
são essas tabelas efetivamente preenchidas. Um exemplo da tabela
comentario preenchida com dados poderia ser:

E continuemos vendo detalhes!

1.12.1 Tipos de Atributos

Os atributos, como já vimos, são os elementos que compõem as


entidades. Eles podem receber várias classificações.

Atributos Compostos versus Simples (Atômicos). Os atributos


compostos são aqueles que podem ser divididos em partes
menores, que representam a maioria dos atributos básicos com

Prof. Victor Dalton


www.estrategiaconcursos.com.br 39 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
significados independentes. Por exemplo, um atributo Endereço, em uma
tabela hipotética, pode ser subdividido em EnderecoRua, Cidade, Estado e
CEP, com os valores 'Av. Rangel Pestana, 300', 'São Paulo', 'SP' e '01017-
911'. Os atributos que não são divisíveis são chamados simples ou atributos
atômicos. E os atributos compostos podem formar uma hierarquia; por
exemplo, EnderecoRua pode ser subdividido, ainda, em três atributos
simples: Rua, Número e Apartamento. O valor de um atributo composto é
a concatenação dos valores componentes dos seus atributos simples. Os
atributos simples são indivisíveis.

Atributos Monovalorados versus Multivalorados. A maioria dos


atributos tem um valor único para uma dada tupla; esses atributos são
chamados monovalorados. Por exemplo, Idade é um atributo
monovalorado de uma pessoa. Em alguns casos, um atributo pode ter um
conjunto de valores para a mesma entidade — por exemplo, um atributo
Cor para um carro ou um atributo Titulação para uma pessoa. Os carros
com uma cor têm um valor único, enquanto aqueles com dois tons contêm
dois valores para Cor. Da mesma forma, uma pessoa pode não ter um título
acadêmico, outra pessoa pode ter um e, uma terceira pessoa, dois ou mais
títulos, portanto, pessoas diferentes podem ter números de valores
diferentes para o atributo Titulação. Esses atributos são chamados
multivalorados. Um atributo multivalorado deve ter limite inferior e superior
para restringir o número de valores permitidos a cada entidade individual.
Por exemplo, o atributo Cor de um carro pode ter entre um e três valores,
se presumirmos que um carro possa ter, no máximo, três cores.

Atributos Armazenados versus Derivados. Em alguns casos, dois


(ou mais) valores de atributos estão relacionados — por exemplo, os
atributos Idade e DataNascimento de uma pessoa. Para uma tabela pessoa
em particular, o valor de Idade pode ser determinado pela data corrente
(hoje) e o valor de DataNascimento da pessoa. Portanto, o atributo Idade
é chamado atributo derivado, e é dito derivado do atributo
DataNascimento, que, por sua vez, é chamado atributo armazenado.
Alguns valores de atributos podem ser derivados de entidades
relacionadas; por exemplo, um atributo NumerodeEmpregados, de uma
entidade departamento, pode ser derivado da contagem do número de
empregados relacionados (que trabalham) nesse departamento.

Valores nulls (Nulos). Em alguns casos, determinada tabela pode não


ter um valor aplicável a um atributo. Por exemplo, o atributo Apartamento
de um endereço se aplica apenas a endereços que estão em edifícios de

Prof. Victor Dalton


www.estrategiaconcursos.com.br 40 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
apartamentos, e não a outros tipos de residência, como as casas. Por
analogia, um atributo Titulação só se aplica a pessoas com titulação
acadêmica. Para essas situações é criado um valor especial chamado null
(nulo). Um endereço de uma casa teria valor null para seu atributo
Apartamento, e uma pessoa sem titulação acadêmica teria valor null para
Titulação. O valor null pode ser usado também quando não conhecemos o
valor de um atributo para uma entidade em particular; por exemplo, se não
soubermos o telefone residencial de 'Joao Paulo'. O sentido do primeiro tipo
de null corresponde a não aplicável, ao passo que o sentido do último se
refere a desconhecido. A categoria 'desconhecido' de null pode ser, ainda,
classificada em dois casos. O primeiro aparece quando se sabe que o valor
do atributo existe mas está faltando — por exemplo, se o atributo Altura
de uma pessoa é dado como null. O segundo caso surge quando não se
sabe se o valor do atributo existe — por exemplo, se o atributo
FoneResidencial de uma pessoa é null.
Atributos Complexos. Observa-se que os atributos compostos e
multivalorados podem ser aninhados de uma maneira arbitrária. Podemos
representar essa organização arbitrária agrupando os componentes de um
atributo composto entre parênteses (), separando os componentes por
meio de vírgulas e mostrando os atributos multivalorados entre chaves {}.
Esses atributos são chamados atributos complexos. Por exemplo, se uma
pessoa pode ter mais de uma residência e cada uma delas pode ter
múltiplos telefones, um atributo EnderecoFone para uma pessoa pode ser
especificado contendo mais de um atributo, como por exempo contendo os
atributos Endereco e Telefone. Ex:
{EnderecoFone({Fone(CodigoArea,NumeroFone)},Endereco(EnderecoRua
(Numero, Rua, Apartamento),Cidade, Estado, CEP))}.

Não confunda!

Simples Monovalorado
indivisível um único valor na tupla

Composto Multivalorado
pode ser dividido em várias partes mais de um valor dentro da
mesma tupla

Atributo composto pode ser monovalorado? SIM!

Prof. Victor Dalton


www.estrategiaconcursos.com.br 41 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Atributo simples pode ser multivalorado? SIM! Exemplo:

Carro Cor
Gol Preto, Azul, Amarelo

Cor é um atributo simples, mas pode ter mais de um valor, dado um


único registro.

Quando o atributo é composto e multivalorado simultaneamente,


ele é complexo.

7) (FCC – TRT 2ª Região – Analista Judiciário – Tecnologia da


Informação – 2014) Em alguns casos, dois ou mais valores de atributos
em um modelo de Entidade-Relacionamento estão relacionados. Por
exemplo, os atributos Idade e Data de Nascimento de uma pessoa. Para
uma Entidade-Pessoa em particular, o valor de Idade pode ser determinado
pela data corrente e o valor de Data de Nascimento da pessoa. Portanto, o
atributo Idade é chamado atributo ...I... do atributo Data de Nascimento,
que, por sua vez, é chamado atributo ...II... .

As lacunas I e II são, correta e respectivamente, preenchidas com:

(A) armazenado - derivado


(B) derivado - armazenado
(C) multivalorado - monovalorado
(D) identificador - complexo
(E) resultante - unívoco

O atributo Idade é um atributo derivado, pois pode ser calculado com base
no atributo armazenado Data de Nascimento, tendo o dia atual como
referência.

Resposta: alternativa b).

1.12.2 Restrições de Integridade

Prof. Victor Dalton


www.estrategiaconcursos.com.br 42 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Pois então, um banco de dados relacional, em sua concepção,
necessita de suas tabelas, das colunas das tabelas(os seus atributos), e de
suas restrições de integridade, fundamentais para a consistência do
banco de dados. Tabelas e colunas você já conhece. Agora, falemos dessa
característica importantíssima, que são as restrições de integridade.

Por meio das restrições de integridade é que são assegurados o correto


relacionamento entre as tabelas. As restrições de integridades podem ser
de:
 Domínio – amarrando os possíveis valores de um atributo
(inteiro, string, não nulo, positivo, tipo, etc.)
 Vazio – dizer se um campo pode ou não ser null. Não deixa de
ser um subitem da integridade de domínio.
 Chave – impedindo que uma chave primária se repita, ou seja
nula;
 Referencial – assegurando que uma chave estrangeira possua
respectiva associação na tabela de origem;

As restrições de domínio e vazio são relativamente intuitivas. As de


chave e referencial são as chaves primárias e estrangeiras, as quais
veremos a seguir.

1.12.3 Chave Primária x Chave Estrangeira

Todo registro em um banco de dados precisa de um atributo, ou vários,


que possibilitem caracterizar aquele registro no banco como único. Ex:

codigo_cliente endereco telefone cidade estado


1 Rua do Imperador 0800- Recife PE
Dom Pedro II, SN 2851244
2 Rua do Imperador 0800- Recife PE
Dom Pedro II, SN 2851244
3 Rua José Augusto (81) 3183- Olinda PE
Moreira, 1037 5941
4 Rua José Augusto (81) 3183- Olinda PE
Moreira, 1037 5941

Perceba que, intencionalmente, escrevi tuplas parecidíssimas,


diferenciadas apenas pelo atributo codigo_cliente.
Prof. Victor Dalton
www.estrategiaconcursos.com.br 43 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
O por quê disso? Imagine que a tabela acima possui um
relacionamento com outra tabela, como a tabela abaixo:

codigo_cliente Nome
1 Jader
2 Afonso
3 André
4 Simone

Agora você percebe um motivo. Dois clientes diferentes, que possuem


um mesmo endereço. Logo, em um banco de dados relacional são
necessárias duas coisas: diferenciar uma tupla da outra e relacionar
as tabelas.

Neste pequeno exemplo, a diferenciação entre as tuplas se faz por


meio da chave primária. No caso, o atributo codigo_cliente.

Voltando ao esquema que eu tanto tenho repetido, perceba que ali


temos alguns atributos com chaves em “dourado”, outros com chave
“parcialmente dourada” e outros com chave “prateada”.

A chave primária é o atributo(coluna) ou atributos(colunas),


que asseguram que cada tupla (linha) da tabela é única.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 44 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
codigo é a chave primária de comentario; codigo é a chave primária
de categoria;cod_usuario e cod_usuario_contato são a chave primária de
contato; e por aí vai.

Mesmo que composta por vários atributos, a chave primária é única


e o seu papel é o de restrição de chave, ou seja, garantir que tuplas não
sejam repetidas. Nesse esquema, as chaves douradas são chaves
primárias.

Um outro conceito interessante referente às restrições de chave é o


conceito de chave candidata, ou chave alternativa. Às vezes, mais de
um atributo de uma tabela são únicos. Tenha como exemplo uma tabela
em que existam os campos CPF, TituloEleitor e Identidade. Todos esses
atributos serão únicos, e eles são chamados de chaves candidatas. Uma
dessas chaves convenientemente será escolhida como chave primária e as
demais permanecerão como chaves candidatas.

A chave estrangeira, por sua vez, exerce o papel de restrição


referencial. A chave estrangeira “amarra” os relacionamentos entre as
tabelas, e explica o porquê das tabelas possuírem linhas interligando-as,
nos modelos. Isso ainda implica que todo valor preenchido na tabela com
chave estrangeira possua uma respectiva associação na tabela onde a
chave associada é primária. No esquema, as chaves prateadas são chaves
estrangeiras.

cod_usuario_remetente e cod_arquivo são chaves estrangeiras na


tabela comentario, pois referenciam, respectivamente, a chave primária
codigo na tabela usuário e a chave primária codigo na tabela arquivo;
Prof. Victor Dalton
www.estrategiaconcursos.com.br 45 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
cod_usuario e cod_usuario_contato, que juntos compõem a chave primária
de contato, também são chaves estrangeiras, pois referenciam,
respectivamente, a chave primária codigo na tabela usuário e a chave
primaria codigo na tabela usuário (sim, isso mesmo, a mesma chave na
mesma tabela). E assim sucessivamente. Procure enxergar todos os demais
relacionamentos nesta tabela.

Perceba que, mesmo que um mesmo atributo possa ser (ou compor)
chave primária e ser chave estrangeira, as funções da chave são bem
distintas. A primária restringe unicidade ou nulidade, enquanto a
estrangeira restringe relacionamento. No esquema, as chaves parcialmente
douradas estão fazendo o papel de chave primária, mas funcionam ao
mesmo tempo como chaves estrangeiras, na mesma tabela.

Por fim, acho interessante que você saiba que, no modelo relacional,
podemos descrever as tabelas, seus atributos e restrições da seguinte
forma abaixo, com os atributos entre parênteses e as chaves sublinhadas:

Comentario (codigo, conteudo, data_criacao, cod_usuario,


cod_arquivo)
Usuario (codigo, nome, email, login, senha)
Contato(cod_usuario, cod_usuario_contato)

Há autores que sublinham “cheio” as chaves primárias e “pontilhado”


as chaves estrangeiras. Em questões de concursos, porém, nunca vi esta
diferenciação, estando as chaves sempre sublinhadas “cheias”.

1.12.4 Outras chaves

Chave substituta: A chave substituta, ou surrogate key, ou chave


artificial, é um campo, normalmente auto incremental, que pode (não é
obrigatório) ser utilizado para definir a chave primária de uma tabela, de
uma maneira genérica. É útil, particularmente, para substituir chaves
primárias compostas por muitos atributos, o que costuma impactar
negativamente a performance do banco de dados.

* Nome Telefone
1 Paulo (11) 99999-8888
2 Paulo (11) 99999-7777

Prof. Victor Dalton


www.estrategiaconcursos.com.br 46 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
3 Paulo (11) 3030-3131
4 Marta (11) 5678-9012
5 Marta (11) 99988-9876
6 Rita (11) 98765-4321
Chave substituta: coluna não identificada, marcada com *

Algumas características da chave substituta:

 O valor é único para a tabela, portanto nunca reutilizado (ou


seja, em caso de exclusão, o número não será reutilizado);
 O valor é gerado pelo sistema(automaticamente);
 O valor não é manipulável pelo usuário ou aplicação;
 O valor não contém nenhum significado semântico;
 O valor não é visível para o usuário ou aplicação (no caso de
modelagem relacional);
 O valor não é composto de vários valores a partir de diferentes
domínios.

Superchave: Superchave é um conjunto de um ou mais atributos


que, tomados coletivamente, nos permitem identificar de maneira unívoca
uma entidade em um conjunto de entidades. Em outras palavras, não
podem existir duas ou mais linhas da tabela com o(s) mesmo(s) valores de
uma superchave.

Perceba que a superchave é um conceito mais abrangente do que o


conceito de chave primária. A chave primária é aquele atributo ou conjunto
de atributos que garante que cada registro na tabela é único. A superchave,
por sua vez, é qualquer conjunto de atributos que consegue a mesma coisa.

Por exemplo, na tabela Comentário:

Comentario (codigo, conteudo, data_criacao, cod_usuario,


cod_arquivo)

A chave primária é codigo. Isto posto, os atributos codigo e conteudo


formam uma superchave, os atributos codigo, conteudo e data_criacao
também formam uma superchave, e por aí vai. Qualquer conjunto de
atributos escolhido que inclua a chave primária formará uma superchave.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 47 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
8) (FCC – SEFAZ/SP – Agente Fiscal de Rendas – 2013) 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.

A chave estrangeira é um atributo, que estabelece um relacionamento


com uma chave primária em outra tabela, embora você possa ter várias
chaves estrangeiras em uma mesma tabela. A chave primária, por sua
vez, é um atributo ou conjunto de atributos que identifica um registro
de maneira única em uma tabela.

Resposta: alternativa d).

1.13 Gerenciamento de Transações

Creio que podemos voltar a este aspecto, uma vez que você
compreende um pouco mais sobre banco de dados.
Lembra que, no começo da apostila, eu falei que o SGBD precisava
gerenciar milhares de transações simultâneas, fazer controle de
redundância, dentre outros?

Acho que você compreende isso melhor agora. Basta imaginar uma
simples transação modificando múltiplas tabelas, verificando restrições de
integridade. Já não é algo simples para uma transação única. E quando as
transações tentam modificar os mesmos campos de uma tabela ao mesmo
tempo? É aí que entra o famoso controle de concorrência do SGBD,
organizando as transações, impedindo que o Banco de Dados entre em um
estado inconsistente.

Idealmente, toda transação em um banco de dados deverá ser:

Atômica: ou a transação é feita ou não é feita. Parece óbvio, mas


transações complexas em um banco, envolvendo várias tabelas, podem

Prof. Victor Dalton


www.estrategiaconcursos.com.br 48 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
sofrer interrupções inesperadas, ou não conseguirem terminar por entrar
em conflito com outra que ocorra ao mesmo tempo. Nesse caso, o SGBD
deverá ser capaz de reverter o que parcialmente foi modificado (realizar o
rollback);

Consistente: os dados deverão permanecer íntegros e obedientes às


regras do banco de dados (metadados);

Isolada: o resultado de uma transação executada concorrentemente


a outra deve ser o mesmo que o de sua execução de forma isolada.
Operações exteriores a uma dada transação jamais verão esta transação
em estados intermediários.

Durável: os efeitos de uma transação em caso de sucesso (commit)


devem persistir no banco de dados mesmo em presença de falhas. os dados
modificados devem estar disponíveis em definitivo.

Às vezes parece óbvio, mas os SGBDs de grandes corporações


trabalham com grandes bases de dados, sofrendo constantes modificações,
com dados distribuídos, inclusive, por várias partes do mundo. Assegurar
o ACID é um verdadeiro desafio.

9) (FCC – TJ/RJ – Analista Judiciário – Analista de Suporte – 2012)


Considere:

I. Se uma transação é concluída com sucesso (operação commit bem


sucedida), então seus efeitos são persistentes.
II. Ou todas as ações da transação acontecem, ou nenhuma delas acontece.

As propriedades (I) e (II) das transações em SGBDs, significam,


respectivamente,

a) durabilidade e consistência.
b) persistência e automação.
c) isolação e atomicidade.
d) durabilidade e atomicidade.
e) consistência e persistência.

Idealmente, toda transação em um banco de dados deverá ser:


Prof. Victor Dalton
www.estrategiaconcursos.com.br 49 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Atômica: ou a transação é feita ou não é feita;

Consistente: os dados deverão permanecer íntegros e obedientes às


regras do banco de;

Isolada: o resultado de uma transação executada concorrentemente a


outra deve ser o mesmo que o de sua execução de forma isolada;

Durável: os efeitos de uma transação em caso de sucesso (commit) devem


persistir no banco de dados mesmo em presença de falhas.

Portanto, alternativa d).

1.14 Catálogo do sistema (dicionário de dados)

Uma vez visto o modelo relacional, creio que seja mais simples
entender o papel do catálogo, ou dicionário de dados.

Um SGBD, ao implementar o modelo relacional, precisa armazenar não


somente os dados propriamente ditos, mas também os metadados. Eles
podem ser:
 nomes das relações (tabelas);
 nomes dos atributos das relações;
 domínios dos atributos;
 restrições de integridade;
 mapeamentos (entre níveis externos, conceitual e interno).

Além dos metadados, também podem ser armazenados:

 nomes de usuários autorizados;


 senhas;
 índices, etc.

Enfim, essa série de informações que possibilitam o correto


gerenciamento da Base de Dados fica armazenada naquilo que chamamos
de Catálogo, ou Dicionário de Dados.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 50 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Catálogo de Dados: Ilustração

Prof. Victor Dalton


www.estrategiaconcursos.com.br 51 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
1.15 Views

Conforme explicado na arquitetura três esquemas de um SGBD, o


nível externo descreve a cada usuário apenas a visão pertinente ao
mesmo. Afinal de contas, pode não ser bom que todos os usuários finais
vejam o esquema conceitual completo, seja por questões de segurança, ou
até mesmo para sua compreensão.

Para tal, um recurso muito eficiente é a utilização de visões (views).

View é uma tabela única derivada de outras tabelas. Por não existir
fisicamente, pode ser considerada uma tabela virtual. A visão,
diferentemente das tabelas básicas, não contém suas tuplas armazenadas
no banco de dados.

Voltemos ao exemplo de Projeto e Departamento:

DEPARTAMENTO

CodDepartamento NomeDepartamento CodGerente

MKT Marketing 001

ADM Administração 003

PROJETO

CodProjeto NomeProjeto CodDepResponsavel

P01 Inovação MKT

P02 Reestruturação ADM

P03 Vender Mais MKT

P04 Novo Produto MKT

Prof. Victor Dalton


www.estrategiaconcursos.com.br 52 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Dadas estas tabelas, pode ser conveniente criar uma visão para o
usuário, que mostre apenas o Projeto e o nome do Departamento
Responsável. Abaixo:

VISÃO PROJETO

Projeto Departamento
Responsável

Inovação Marketing

Reestruturação Administração

Vender Mais Marketing

Novo Produto Marketing

Compreendeu a utilidade da visão? É vantajoso utilizá-la quando o


usuário realiza consultas muito frequentes a determinadas tabelas. Ainda,
campos que não sejam muito úteis ao usuário final, como CodigoProjeto e
CodigoDepartamento, podem ficar ocultos.

Entretanto, por sua natureza virtual, as visões apresentam algumas


restrições. Vejamos a seguir.

1.15.1 Views materializadas

Certos SGBDs garantem que, em caso de modificação nas relações


utilizadas em uma view, a mesma permanecerá atualizada. Essas views
podem ser chamadas de views materializadas.

A responsabilidade pela atualização da view será sempre do SGBD, e


não do usuário.

1.15.2 Atualização de uma view

Prof. Victor Dalton


www.estrategiaconcursos.com.br 53 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
As views, por sua natureza virtual, apresentam restrições quanto à
atualização, inserção ou exclusão de informações.

Para ser atualizável, via de regra, uma view deverá:

 Influenciar apenas uma tabela do banco de dados;

 Em caso de atributos ocultos na view, ou esse atributo deve ser


gerado automaticamente (no caso de um código, por exemplo),
ou possuir valor default, ou poder ser nulo (null).

Voltemos ao nosso exemplo:

VISÃO PROJETO

Projeto Departamento
Responsável

Inovação Marketing

Reestruturação Administração

Vender Mais Marketing

Novo Produto Marketing

Esta view não permite a modificação dos dados, pois ela envolve duas
tabelas, Projeto e Departamento, lembra?

Entretanto, caso ela viesse somente da tabela Projeto, poderíamos


inserir, atualizar ou excluir algum dado da view. O atributo oculto
CodProjeto, por ser gerado automaticamente (neste exemplo), não seria
obstáculo para a modificação da view.

Quando se modifica uma view, os dados da tabela de origem são


modificados. Não existem registros em uma view, pois a tabela é
virtual!

Prof. Victor Dalton


www.estrategiaconcursos.com.br 54 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
1.16 Normalização em Bancos de Dados

A normalização de dados é uma série de passos que se seguem no


projeto de um banco de dados, que permitem um armazenamento
consistente e um eficiente acesso aos dados em bancos de dados
relacionais. Esses passos reduzem a redundância de dados e as chances
dos dados se tornarem inconsistentes. Ela consiste de um processo
matemático formal fundamentado na Teoria dos Conjuntos.

Através do processo matemático da normalização, pode-se substituir,


gradativamente, um conjunto de Entidades e Relacionamentos por um
outro, mais “adequado”, em relação a anomalias de atualização (Inclusão,
Alteração e Exclusão). Tudo com o objetivo de deixar o banco da dados
mais “organizado”, e otimizar a performance do Banco de Dados.

Antes de explicar as formas normais, vejamos o conceito de


dependência funcional. Em linhas gerais, uma dependência funcional
entre dois atributos X e Y é uma restrição nos possíveis valores de Y, dado
um valor X. Por exemplo, o valor na coluna CPF de uma tabela certamente
restringirá o valor NOMECOMPLETO, nesta mesma tabela.

Entendendo dependência funcional, vejamos as formas normais:

1ª Forma Normal – uma tabela está na primeira forma normal se


não possuir atributos multivalorados. É uma definição bem tranquila de
assimilar. Veja abaixo uma tabela que não está na primeira forma normal,
e outra que está:

Nome Telefone
Paulo (11) 99999-8888
(11) 99999-7777
(11) 3030-3131
Marta (11) 5678-9012
(11) 99988-9876
Rita (11) 98765-4321

A tabela acima não está na primeira forma normal (1FN). O atributo


telefone está multivalorado em alguns registros.

Nome Telefone
Paulo (11) 99999-8888

Prof. Victor Dalton


www.estrategiaconcursos.com.br 55 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Paulo (11) 99999-7777
Paulo (11) 3030-3131
Marta (11) 5678-9012
Marta (11) 99988-9876
Rita (11) 98765-4321

Agora a tabela encontra-se na 1FN. O atributo multivalorado foi


“atomizado” por meio da criação de tuplas adicionais.

2ª Forma Normal – uma tabela estará na segunda forma normal se,


além de estar na 1FN, todos os seus atributos não-chave forem depender
funcionalmente da chave inteira. Se algum atributo da tabela depender
funcionalmente apenas de parte da chave primária, então este atributo
deverá migrar para outra tabela. Veja este exemplo:

Projetos(codp, tipo, descrição)


EmpregadosProjetos(code,codp, nome, categ, salário, data_início_projeto,
tempo_aloc_projeto)

Neste exemplo, os atributos nome, categ e salário da tabela


EMPREGADOSPROJETOS se relacionam apenas com code, ou seja, não
ocorre a dependência funcional total da chave primária. A solução, na
segunda forma normal, seria:

Projetos(codp, tipo, descrição)


Empregados(code, nome, categ, salário)
ProjEmp(codp, code, data_início, tempo_aloc)

3ª Forma Normal – envolve o conceito de dependência transitiva.


Para isso, a tabela deverá estar na 2FN e cada atributo não-chave não pode
possuir dependência transitiva, para cada chave candidata da relação. Na
prática, se Z depende de Y e Y depende de X, sendo que apenas X é chave
da relação, esta tabela não estará na terceira forma normal.

Perceba que, na solução para a segunda forma normal apresentada


anteriormente, salário possui dependência funcional de categoria.

Assim sendo, uma solução na terceira forma normal seria:

Projetos(codp, tipo, descrição)


Empregados(code, nome, categ)
Categorias(categ, salário)
ProjEmp(codp, code, data_início, tempo_aloc)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 56 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Forma Normal de Boyce-Codd(BCNF) – além da 3FN, todo atributo
não-chave deve depender funcionalmente diretamente da chave primária,
ou seja, não pode haver dependências entre atributos não-chave. É uma
afirmação um pouco mais forte que a 3FN.

Forma Normal de Boyce Codd (FNBC) – foi proposta como uma


forma mais simples de 3FN, mas acaba sendo mais rígida. Ou seja, toda
relação na FNBC está na 3FN, mas a volta não é obrigatoriamente
verdadeira. Uma tabela estará na BCNF se e somente se estiver na 3FN e
todo atributo não chave depender funcionalmente diretamente da chave
primária, ou seja, não há dependências entre atributos não chave. Nesse
caso, todo determinante será chave candidata.

4ª Forma Normal – além da 3FN, não podem existir dependências


multivaloradas.

Veja este exemplo:

Livros(nrol, título, editora, ano_public)


Editoras(editora, cid-edit)
AutAssLiv(nrol, autor, assunto)

Perceba que um mesmo livro que possua vários autores receberá


múltiplas entradas na tabela AutAssLiv com a repetição do atributo assunto.
Uma eventual busca nesta tabela, filtrando por assunto, retornaria várias
vezes o mesmo livro, com autores distintos. Seria necessária a aplicação
de alguma lógica para que fosse mostrado um único resultado de livro, com
seus diferentes autores.

Isto pode ser contornado com a aplicação da 4FN, a seguir:

Livros(nrol, título, editora, ano_public)


Editoras(editora, cid-edit)
AutLiv(nrol, autor)
AssLiv(nrol, assunto)

5ª Forma Normal – Envolve a noção dependência de junção.

Existem tabelas na 4FN que não podem ser divididas em duas relações
sem perda de informação. Por exemplo:

ProjetoRecurso(CodEmp, CodPrj, Papel)


R1(CodEmp, Papel)
R2(CodPrj, CodEmp)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 57 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Sejam as relações R1 e R2 a decomposição da relação ProjetoRecurso.


A tabela ProjetoRecurso indica o empregado envolvido em um projeto e
qual o seu papel. R2 seria uma tabela com o empregado e os possíveis
papéis que ele pode exercer, ao mesmo tempo que R1 seria uma tabela
que relaciona os empregados e seus projetos. Decompor ProjetoRecurso
em R2 e R1 implica em perda de informação, uma vez que não será mais
possível saber qual o papel que o empregado desempenhou em um projeto
específico.

Realizar esta decomposição seria aplicar a quinta forma normal.

10) (FCC – TCE/RS – Auditor Público Externo – Processamento de


Dados - 2014) Considerando o conceito de normalização existente em
bancos de dados relacionais, uma relação R está na segunda forma normal
se, além de estar na primeira forma normal,

(A) todos atributos que não fizerem parte da chave primária dessa relação
forem do tipo literal, com um comprimento máximo de 20 caracteres.
(B) não houver atributos do tipo numérico na chave primária dessa relação,
mas apenas atributos do tipo derivado.
(C) todos atributos que não fizerem parte da chave primária dessa relação
forem completamente dependentes de sua chave primária, ou seja,
dependente de toda a chave e não apenas de parte dela.
(D) houver um número mínimo de 3 atributos nessa relação, sendo que
todos esses atributos devem ser do tipo composto.
(E) os atributos de R estiverem restritos a uma lista predefinida de valores,
sendo essa lista composta por um número máximo de valores.

Para estar na segunda forma normal, uma tabela, além de estar na 1FN,
precisa que todos os seus atributos não-chave forem dependam
funcionalmente da chave inteira. Ou seja, não podem existir atributos que
dependam apenas de parte da chave, caso exista mais de um atributo
compondo a chave primária.

Resposta certa, alternativa c).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 58 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

1.16.1 Anomalias em bancos de dados

Quando as boas práticas de normalização não são seguidas, algumas


anomalias podem surgir. As anomalias são fruto de informações
redundantes que comprometem espaço em disco e performance do banco
de dados.

Vamos visualizar a tabela EMPREGADO_PROJETO (cod_emp,


emp_nome, cod_Proj, nome_proj), em que cod_emp é chave primária.
Essa tabela sequer obedece à segunda forma normal, e possui duas
entidades em uma tabela só, empregado e projeto.

Um projetista iniciante pode escolher uma abordagem de projeto de


banco de dados como essa, pois cria menos tabelas. Mas vejamos os tipos
de anomalias que essa abordagem pode provocar:

Anomalia de inserção – quando a inserção de uma informação está,


de certa forma, “amarrado” a outra informação. Quando, por exemplo, não
se pode inserir um empegado sem ter um projeto associado, e não se pode
inserir um projeto sem ter um empregado associado.

Anomalia de remoção – quando se remove um projeto, todos os


empregados associados são removidos. Por outro lado, quando o último
empregado de um projeto é removido, o projeto também é removido.

Anomalia de atualização – atualizar os dados de um projeto faz com


que todos os empregados que pertençam ao projeto precisem ser
atualizados.

Percebeu a importância de uma boa abordagem de projeto de banco


de dados, obedecendo às boas práticas de normalização?

Certamente, um projeto mais adequado seria:

EMPREGADO (cod_emp, emp_nome)

EMPREGADO_PROJETO (cod_emp, cod_Proj)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 59 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
PROJETO (cod_Proj, nome_proj)

Pois bem, finda nossa parte teórica, é hora dos exercícios!

EXERCÍCIOS COMENTADOS

Prof. Victor Dalton


www.estrategiaconcursos.com.br 60 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
1ª Questão) (ESAF – Superintendência de Seguros Privados –
Tecnologia da Informação - 2010) Um banco de dados é um
a) conjunto de objetos da realidade sobre os quais se deseja manter
informações.
b) conjunto de operações sobre dados integrados destinados a modelar
processos.
c) software que incorpora as funções de definição, recuperação e alteração
de dados.
d) software que modela funções de definição, recuperação e alteração de
dados e programas.
e) conjunto de dados integrados destinados a atender às necessidades de
uma comunidade de usuários.

O que difere um Banco de Dados de um Bando de Dados? relacionamento


e finalidade! Um banco de dados é um conjunto de dados relacionados com
uma finalidade específica. Esta finalidade pode a produção de informação, para
determinado público alvo (uma empresa, ou um órgão público, por exemplo), bem
como suportar um negócio (como o estoque de produtos de um fornecedor, ou
um cadastro de funcionários, ou tudo isso junto).

Conhecendo esta definição, você não corre o risco de marcar a alternativa a)


ao invés da alternativa e), que é a correta.

2ª Questão) (ESAF – Analista de Finanças e controle – Fiscalização


Geral - 2012) O projeto geral do banco de dados é
a) o esquema do banco de dados.
b) o planejamento estratégico do fluxo de dados.
c) o esquema de dimensionamento físico-financeiro do banco de dados.
d) a versão inicial de instanciação dos dados a serem carregados no sistema.
e) o esquema de atualização dos dados para manutenção de consistência.

Um esquema do banco de dados é uma coleção de objetos de um banco


de dados que estão disponíveis para um determinado usuário ou grupo. Os objetos
de um esquema são estruturas lógicas que se referem diretamente aos dados do
banco de dados. Eles incluem estruturas, tais como tabelas, visões, seqüências,
procedimentos armazenados, sinônimos, índices, agrupamentos e links de banco
de dados.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 61 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Ou seja, ao se elaborar um sistema, seu projeto de banco de dados é


idealizado em um esquema (como a figura acima).

Resposta: letra a).

3ª Questão) (FCC – TCE/SP - Agente da Fiscalização Financeira -


Produção e Banco de Dados – 2010) No catálogo são mantidos
a) esquemas internos, conceituais e externos, mapeamentos e metadados.
b) apenas os esquemas internos e os metadados.
c) apenas o esquema conceitual e os metadados.
d) apenas os esquemas internos, externos e os metadados.
e) apenas o mapeamento conceitual.

O catálogo, também chamado de dicionário de dados, guarda os


metadados do modelo relacional, que englobam mapeamentos, esquemas, dados
das relações, atributos, etc. A alternativa mais abrangente, invariavelmente, será
a correta.

Alternativa a).

4ª Questão) (FCC – TCE/AM – Analista Técnico de Controle Externo –


Tecnologia da Informação - 2012) O modelo conceitual de dados

a) é aquele em que os objetos, suas características e relacionamentos têm a


representação de acordo com as regras de implementação e limitantes impostos
por algum tipo de tecnologia.
b) é aquele em que os objetos, suas características e relacionamentos têm a
representação fiel ao ambiente observado, independente de limitações quaisquer
impostas por tecnologias, técnicas de implementação ou dispositivos físicos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 62 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
c) é aquele elaborado respeitando-se e implementando-se conceitos tais
como chaves de acesso, controle de chaves duplicadas, itens de repetição
(arrays), normalização, ponteiros e integridade referencial, entre outros.
d) é a fase da modelagem na qual é necessário considerar todas as
particularidades de implementação, principalmente o modelo que será utilizado
para a implementação futura.
e) está sempre associado às fases de projeto, contrastando com o modelo
lógico, que sempre está associado à fase de análise, quando utilizado com as
metodologias de desenvolvimento de sistemas e implementado por ferramentas
CASE.

A primeira fase do projeto do banco é o levantamento e análise de requisitos,


que na prática, é a especificação das necessidades do usuário do banco.
Entrevista-se o usuário do banco para entendimento e documentação dos seus
requisitos de dados.

A segunda fase é o projeto conceitual, em que já se criam descrições


detalhadas de tipos de entidades, relacionamentos, atributos e restrições. A
modelagem conceitual empregada baseia-se no mais alto nível e deve ser usada
para envolver o cliente. O modelo normalmente utilizado é o modelo entidade-
relacionamento.

Ilustração de modelagem conceitual usando o Diagrama E-R.

Posteriormente ocorre as especificações das necessidades funcionais,


depreendidas do próprio projeto conceitual. Caso exista algum impedimento
funcional para a implementação do banco, talvez seja necessário voltar ao projeto
conceitual e realizar algumas modificações.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 63 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Em seguida aparece o projeto lógico, ou mapeamento do modelo de dados.
A modelagem lógica, por sua vez, já realiza o mapeamento do esquema
conceitual para o modelo de dados que será usado. O modelo de dados de
implementação normalmente é o modelo de dados relacional.
Por fim, temos o projeto físico, durante a qual são definidas as estruturas
de armazenamento interno, índices, caminhos de acesso e organizações de
arquivo para os arquivos do banco de dados. Já passa a depender de regras de
implementação e restrições tecnológicas.

Voltando à questão:

a) Aborda o projeto lógico. Errada;


b) Correta;
c) Projeto lógico. Errada;
d) Especificações das necessidades funcionais. Errada;
e) Errada. O modelo conceitual está mais ligado à fase de análise, que não
tem detalhes de implementação nem dependência de tecnologia. Já o
modelo lógico está associado à fase de projeto, quando utilizado com as
metodologias de desenvolvimento de sistemas e implementado por
ferramentas CASE. Envolve conhecimento de Engenharia de Software.

5ª Questão) (FCC – ALESP - Agente Técnico Legislativo–


Administração de Banco de Dados – 2010) Um modelo de banco de dados é
uma descrição do tipo de informação que está ou será armazenada em um banco
de dados. O mesmo modelo de banco de dados pode ser descrito em diversos
níveis de abstração. Geralmente, utilizam-se os níveis
a) conceitual e prático.
b) escrito e lógico.
c) representativo e prático.
d) conceitual e lógico.
e) escrito e prático.

Visto na questão anterior! Modelo conceitual, lógico (ou representacional,


ou de implementação)e físico.

Alternativa d).

6ª Questão) (FCC – MPE/AM – Agente de Apoio – Programador - 2013)


Um sistema de banco de dados deve apresentar um projeto que visa a organização
das informações e utilização de técnicas para que o futuro sistema obtenha boa
performance e também facilite as manutenções que venham a acontecer.
O projeto de banco de dados se dá em, pelo menos, duas fases: Modelagem
conceitual e

Prof. Victor Dalton


www.estrategiaconcursos.com.br 64 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

a) Projeto lógico.
b) Teste de integração.
c) Instalação.
d) Definição da ferramenta que será adotada.
e) Teste de carga.

Outra abordagem da mesma banca. Alternativa a).

7ª Questão) (ESAF – CVM – Analista - Sistemas – 2010) Assinale a opção


correta.
a) Um banco de dados relacional é composto de roteamentos.
b) O projeto de um banco de dados é realizado segundo as fases Modelagem
Procedural, Projeto Lógico, Projeto Operacional.
c) O projeto de um banco de dados é realizado segundo as fases Modelagem
Conceitual, Projeto Lógico, Projeto Físico.
d) O projeto de um banco de dados é realizado por meio das fases
Modelagem Lógica e Modelagem Física.
e) Um banco de dados relacional é composto de configurações.

Alternativa c).

8ª Questão) (ESAF – Analista de Finanças e Controle –


Desenvolvimento de Sistemas de Informação – 2008) Administrar um
banco de dados constitui-se basicamente em instalar, configurar, monitorar e
solucionar problemas em um SGBD (Sistema Gerenciador de Banco de Dados).
Assim, constituem-se responsabilidades de um Administrador de Banco de Dados
(DBA), exceto:
a) planejar o projeto físico do banco de dados.
b) realizar, testar e manter cópias de segurança dos dados periodicamente.
c) monitorar o desempenho do servidor de banco de dados e tomar as
providências necessárias para atender as demandas dos usuários e sistemas.
d) definir regras para a nomenclatura utilizada nas tabelas e nos esquemas
do banco de dados.
e) definir e verificar periodicamente a segurança e integridade do servidor
de banco de dados.

A bibliografia cita 3 atores no processo de criação de um SGBD. A saber:

Projetista do Banco de Dados – os idealizadores do banco. Conversam


com os usuários para especificar requisitos e modelam conceitualmente o banco;

Prof. Victor Dalton


www.estrategiaconcursos.com.br 65 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Administrador do Banco de Dados – implementam o banco e cuidam dele
durante seu ciclo de vida;
Usuário do Banco de Dados (ou Usuário Final) – especificam suas
necessidades, antes do BD, e o utilizam após sua criação.

Com estes conceitos em mente, sem se prender a detalhes, acho que as


únicas alternativas que podem colocar o candidato em dúvida são as alternativas
a) e d), pois as demais alternativas nitidamente são atribuições do DBA (apelido
para o Administrador do Banco de Dados). Um olhar mais atento vai fazer você
notar que a alternativa d) é uma atribuição do projetista do banco, sendo esta
a alternativa a ser marcada.

9ª Questão) (FCC – INFRAERO – Analista de Sistema – Banco de Dados


e Administrador de Dados - 2011) Quando uma transação A acessa o banco
de dados, o SGBD automaticamente bloqueia cada parte do banco que essa
transação altera ou requisita. Ao efetuar uma transação B em paralelo, o SGBD
também bloqueia partes do banco de dados que essa transação acessa. Tais
procedimentos se referem à característica de um SGBD denominada controle de

a) integridade.
b) concorrência.
c) restrição.
d) desempenho.
e) restauração.

Para assegurar o isolamento de uma transação (I do ACID) o SGBD precisa


controlar a interação entre as transações concorrentes (transações simultâneas
que podem acessar e/ou manipular registros em comum). Tal mecanismo é
alcançado por meio se uma série de mecanismos chamados de esquemas de
controle de concorrência.

Resposta certa, alternativa b).

10ª Questão) (FCC – ALESP – Agente Técnico Legislativo –


Administração de Banco de Dados – 2010) NÃO é uma vantagem do SGBD:
a) controle de redundância.
b) compartilhamento de dados.
c) restrição a acesso não autorizado.
d) tolerância a falhas.
e) custo.
Já sabemos que adotar um SGBD custa caro!

Alternativa e).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 66 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

11ª Questão) (FCC – TST – Analista Judiciário – Análise de Sistemas –


2012) Um Sistema de Gerenciamento de Bancos de Dados (SGBD)
a) é um ambiente de suporte ao desenvolvimento de projetos de banco de
dados relacionais, que gera um modelo de banco de dados para ser implementado
em um servidor.
b) prepara aplicações para que possam acessar um ou mais bancos de dados.
Na linguagem de programação Java, por exemplo, o JDBC (Java Data Base
Connectivity) é um SGBD capaz de acessar dados de diferentes bancos.
c) oferece um conjunto de ferramentas que possibilitam o gerenciamento de
diferentes arquivos do tipo texto ou do tipo binário, armazenados em bancos de
dados, limitados aos formatos UNICODE ou ASCII.
d) consiste em uma tecnologia de servidores que opera sobre o protocolo
HTTP para a troca de dados e informações através de arquivos que transportam
mensagens no formato HTML.
e) faz a gerência de uma ou mais bases de dados, permitindo o
armazenamento e consulta de dados e informações pelos usuários finais e
programas de aplicação.

Das várias alternativas confusas, que passam por outros ramos da TI, a
alternativa e) apresenta uma afirmativa completa e coerente.

12ª Questão) (FCC – TCE/SP - Agente da Fiscalização Financeira -


Produção e Banco de Dados – 2010) As três visões da arquitetura básica de
um SGBD, pela ordem, desde a mais próxima do usuário até a mais distante, são:
a) externa, conceitual e interna.
b) externa, interna e conceitual.
c) conceitual, interna e externa.
d) conceitual, externa e interna.
e) interna, conceitual e externa.

Para relembrar!

Prof. Victor Dalton


www.estrategiaconcursos.com.br 67 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Alternativa a).

13ª Questão) (FCC – SEFAZ/SP - Agente Fiscal de Rendas – Tecnologia


da Informação – 2009) Considere:

I. O que se ocupa do modo como os dados são fisicamente armazenados.


II. O que se ocupa do modo como os dados são vistos por usuários
individuais.
III. Nível lógico de comunidade ou apenas lógico (mais abstrato que o físico
e diferente da visão do usuário individual).

Em um projeto arquitetural, os itens I, II e III são classificados,


respectivamente, como níveis
a) externo, conceitual e interno.
b) externo, interno e conceitual.
c) interno, externo e conceitual.
d) interno, conceitual e externo.
e) conceitual, externo e interno.

Relembrando:

Nível externo: abrange os esquemas externos, ou visões de usuário. Cada


esquema descreverá apenas a visão pertinente de cada usuário a respeito do
Banco de Dados, ocultando o restante. Por exemplo, para um aluno, de um
sistema de aulas online, somente determinada parte do BD lhe é relevante,
provavelmente relacionada aos cursos que realiza. Para um administrador

Prof. Victor Dalton


www.estrategiaconcursos.com.br 68 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
financeiro desse sistemas, por sua vez, aspectos administrativos serão mais
relevantes, relacionados aos pagamentos dos cursos e de pessoal.

Nível conceitual: possui um esquema conceitual, que descreve o banco de


dados como um todo. Oculta detalhes do armazenamento físico, enfatizando
entidades, tipos de dados e restrições.

Nível interno: apresenta um esquema interno, descrevendo a estrutura de


armazenamento físicos do banco de dados.

Alternativa c).

14ª Questão) (FCC – MPE/AM – Agente de Apoio – Programador -


2013) O sistema de banco de dados deve garantir uma visão totalmente abstrata
do banco de dados para o usuário, ou seja, para o usuário do banco de dados
pouco importa qual a unidade de armazenamento está sendo usada para guardar
seus dados, contanto que os mesmos estejam disponíveis no momento
necessário.

Esta abstração se dá em três níveis:

I. Nível de visão do usuário: as partes do banco de dados que o usuário


tem acesso de acordo com a necessidade individual de cada usuário ou grupo de
usuários.
II. Nível conceitual.
III. Nível físico: é o nível mais baixo de abstração, em que define
efetivamente de que maneira os dados estão armazenados.

O Nível conceitual:

a) garante a integridade dos dados por aplicação de criptografia e o controle


de blocos de acesso.
b) especifica a maneira como os dados devem ser transferidos para a
memória.
c) determina o tipo de segurança que será utilizado no acesso aos dados.
d) apresenta o conceito de acesso (simétrico ou assimétrico) e as chaves que
serão utilizadas.
e) define quais os dados que estão armazenados e qual o relacionamento
entre eles.

Mais uma questão envolvendo os níveis. O mais interessante, entretanto, é


que as alternativas de a) a d) aproximam-se do nível físico de abstração. A

Prof. Victor Dalton


www.estrategiaconcursos.com.br 69 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
alternativa e) é a correta, pois no nível conceitual definem-se relações, tipos de
dados, restrições de integridade, dentre outros.

15ª Questão) (FCC – MPE/SE – Analista – Gestão e Análise de Projeto


de Sistema - 2013) Em projetos de Banco de Dados, o objetivo da arquitetura
de três-esquemas é separar o usuário da aplicação do banco de dados físico. Nessa
arquitetura, os esquemas podem ser definidos por três níveis:

I. O nível interno tem um esquema que descreve a estrutura de


armazenamento físico do banco de dados. Esse esquema utiliza um modelo de
dado físico e descreve os detalhes complexos do armazenamento de dados e
caminhos de acesso ao banco;
II. O nível conceitual possui um esquema que descreve a estrutura de todo
o banco de dados para a comunidade de usuários. O esquema conceitual oculta
os detalhes das estruturas de armazenamento físico e se concentra na descrição
de entidades, tipos de dados, conexões, operações de usuários e restrições.
Geralmente, um modelo de dados representacional é usado para descrever o
esquema conceitual quando o sistema de banco de dados for implementado. Esse
esquema de implementação conceitual é normalmente baseado em um projeto de
esquema conceitual em um modelo de dados de alto nível;
III. O nível interno ainda abrange os esquemas externos ou visões de
usuários. Cada esquema interno descreve a parte do banco de dados que um dado
grupo de usuários tem interesse e oculta o restante do banco de dados desse
grupo. Como no item anterior, cada esquema é tipicamente implementado
usando-se um modelo de dados representacional, possivelmente baseado em um
projeto de esquema externo em um modelo de dados de alto nível.

Está correto o que se afirma em

a) II, apenas.
b) II e III, apenas.
c) I, II e III.
d) I e II, apenas.
e) III, apenas.

Questão sem maiores dificuldades. Os itens I e II estão corretos, enquanto


o item III descreve o nível externo.

Alternativa d).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 70 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
16ª Questão) (FCC – SEFAZ/SP - Agente Fiscal de Rendas – Tecnologia
da Informação – 2009) A independência de dados física e a independência de
dados lógica são possibilitadas de forma ideal, respectivamente, por um
a) ou mais mapeamentos conceituais/internos e por um ou mais
mapeamentos internos/externos.
b) mapeamento conceitual/interno e por um ou mais mapeamentos
externos/conceituais.
c) mapeamento interno/externo e por um mapeamento conceitual/interno.
d) ou mais mapeamentos internos/externos e por um mapeamento
conceitual/interno.
e) mapeamento conceitual/externo e por um mais mapeamentos
conceituais/internos.

Nos nossos autos, consta que

Independência lógica é a capacidade de alterar o esquema conceitual sem


precisar modificar os esquemas externos.

Independência física é a capacidade de alterar o esquema interno sem


precisar modificar o esquema conceitual.

Coopera para o alcance da independência lógica um mapeamento bem feito


dos níveis externos para o nível conceitual. De maneira análoga, um mapeamento
adequando do nível conceitual para o nível interno possibilita a independência
lógica.

Alternativa b).

17ª Questão) (Cesgranrio – Petrobrás – Analista de Sistemas Júnior –


Engenharia de Software – 2010) A independência de dados lógica, definição
componente da arquitetura de três esquemas para sistemas de banco de dados,
corresponde à capacidade de se efetuarem
a) mudanças no nível conceitual, sem a necessidade de modificações no nível
externo e em programas aplicativos.
b) mudanças no nível interno, sem a necessidade de modificações nos níveis
conceitual e externo.
c) mudanças no nível externo, sem a necessidade de modificações nos níveis
interno e conceitual.
d) consultas em SQL sobre um banco de dados relacional, independente da
estruturação física dos dados armazenados.
e) consultas em SQL sobre um banco de dados relacional, independente da
lógica de programação usada em programas aplicativos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 71 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Alternativa a).

18ª Questão) (FCC – MPE/SE – Analista – Gestão e Análise de Projeto


de Sistema - 2013) A capacidade de alterar o esquema conceitual sem mudar o
esquema externo ou os programas, podendo modificar o esquema conceitual para
expandir o banco de dados (adicionando um tipo de registro ou item de dados),
variar as restrições ou reduzir o banco de dados (removendo um tipo de registro
ou item de dados) é chamada de

a) modularidade.
b) modelo conceitual.
c) independência lógica de dados.
d) polimorfismo.
e) agregação.

Alternativa c).

19ª Questão) (FCC – TRE/SP – Analista Judiciário – Análise de


Sistemas - 2012) É o modelo de dados que eliminou o conceito de hierarquia,
permitindo que um mesmo registro estivesse envolvido em várias associações. Os
registros, organizados em grafos, permitem o tipo de associação que define uma
relação 1:N entre os tipos de registros proprietário e membro. Assim, para dois
relacionamentos 1:N entre os registros A e D e entre os registros C e D é possível
construir um relacionamento M:N entre A e D. Trata-se do modelo

a) em rede.
b) relacional.
c) hierárquico.
d) orientado a objetos.
e) distribuído.

Revisitando o histórico dos modelos

Modelo hierárquico: O modelo hierárquico foi o primeiro a ser reconhecido


como um modelo de dados. Nele, os registros são conectados em uma estrutura
de dados em árvore, similar a uma árvore invertida (ou às raízes de uma árvore).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 72 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Modelo em rede: o modelo em rede acabou eliminando a hierarquia, pois


passou a permitir que, em tese, cada registro filho pudesse ser ligado a mais de
um registro pai.

Nesse caso, a estrutura em árvore se desfaz, e passa a se assemelhar a uma


estrutura em grafo. Relacionamentos N:M também passam a ser permitidos
(lembrando que o relacionamento é estabelecido entre registros).

Modelo relacional: O modelo relacional usa uma coleção de tabelas para


representar os dados e as relações entre eles.

Modelo Entidade/Relacionamento: O modelo de Entidade-


Relacionamento (E-R) é baseado na percepção de um mundo real que consiste em
uma coleção de objetos básicos, chamados entidades, e os relacionamentos entre
esses objetos (existem autores que falam em relação para descrever
relacionamentos.

Modelo de dados orientado a objetos: É uma extensão do modelo ER com


noções de encapsulamento de identidade do objeto (isso será visto em
programação).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 73 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Modelo de dados objeto-relacional: Combina características do modelo
relacional com o modelo orientado a objetos.

Visto essas informações, volte à questão e responda o que se pede. Acredito


que você marcará a alternativa a).

20ª Questão) (ESAF – MPOG – Analista de Planejamento e Orçamento


– Tecnologia da Informação – 2009) No modelo entidade-relacionamento, a
cardinalidade de mapeamento expressa
a) o número de entidades ao qual um relacionamento pode estar associado
a um outro relacionamento.
b) o número de relacionamentos ao qual outro relacionamento pode estar
associado via uma entidade.
c) o critério de classificação segundo o qual os relacionamentos associam
entidades.
d) o número de entidades ao qual outra entidade pode estar associada via
um relacionamento.
e) o posicionamento de uma entidade dentro do mapeamento do modelo.

Sabemos que a cardinalidade serve para expressar o número de


entidades que uma entidade pode associar-se, por meio de um
relacionamento.

O restante é para causar confusão. Alternativa d).

21ª Questão) (UEL – Sercomtel – Informática III – 2005) Para um


conjunto de relacionamentos binários a cardinalidade NÃO pode ser:
a)Um para um (1:1): uma entidade E1 pode estar associada no máximo a
uma entidade E2 através de R; e uma entidade de E2 pode estar associada a no
máximo uma entidade E1, através de R.
b)Um para muitos (1:N): uma entidade E1 pode estar associada a várias
entidades E2; e uma entidade de E2 pode estar associada a no máximo uma
entidade E1.
c)Muitos para um (N:1): uma entidade E1 pode estar associada no máximo
a uma entidade E2; e uma entidade de E2 pode estar associada a várias entidades
de E1.
d)Muitos para muitos (N:N): uma entidade E1 pode estar associada a várias
entidade E2; e uma entidade de E2 pode estar associada a várias entidades de
E1.
e)Um para muitos (1:N): uma entidade E1 pode estar associada a várias
entidade E2 ou nenhuma; e uma entidade de E2 pode estar associada a nenhuma
ou muitas entidades de E1.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 74 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Conhecida a cardinalidade, você já resolve a questão. As quatro primeiras
alternativas exemplificam bem as várias cardinalidades.

A alternativa incorreta, letra e).

22ª Questão) (FCC – Prefeitura de SP – Auditor Fiscal Tributário


Municipal I – Tecnologia da Informação - 2012) Considere o seguinte
diagrama ER parcial de um banco de dados.

De acordo com a cardinalidade das associações, um

a) projeto emprega pelo menos um empregado e é controlado por


exatamente um departamento.
b) empregado trabalha em pelo menos um projeto e gerencia exatamente
um departamento.
c) empregado trabalha em zero ou mais projetos e gerencia exatamente um
departamento.
d) departamento é gerenciado por exatamente um empregado e controla
pelo menos um projeto.
e) departamento é gerenciado por exatamente um empregado e controla
zero ou mais projetos.

Se lembra como interpretar esse diagrama? Vem comigo!

Empregado gerencia departamento. Pelas linhas simples e duplas, vejo


que nem todo empregado gerencia departamento, mas todo departamento tem
um gerente, e apenas um, pois a cardinalidade é 1:1;
Empregado trabalha em projeto. Linhas simples, e relacionamento N pra
M. Isso quer dizer que nem todo empregado trabalha em um projeto, e nem todo

Prof. Victor Dalton


www.estrategiaconcursos.com.br 75 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
projeto tem empregados. Um empregado pode trabalhar em vários projetos, e
projetos podem ter vários empregados;
Departamento controla projeto. Cardinalidade 1 pra N, linhas duplas em
projeto. Logo, nem todo departamento controla projeto, mas cada projeto tem
que ter um departamento que o controle, e apenas um!

Conseguiu acompanhar?

Agora você tem uma questão de lógica para resolver. Leia alternativa a
alternativa, e descubra porque a alternativa e) é a correta.

23ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) Quando do projeto de um banco de dados relacional, pode haver a
indicação de que um conjunto de entidades tem participação total em um conjunto
de relacionamentos, isto significa que

a) cada entidade do conjunto de entidades participa em todos os


relacionamentos do conjunto de relacionamentos.
b) há, no mínimo, metade das entidades do conjunto de entidades que
participam em pelo menos um relacionamento do conjunto de relacionamentos.
c) as entidades do conjunto de entidades não possuem atributos do tipo
booleano ou do tipo data.
d) cada entidade do conjunto de entidades participa em pelo menos um
relacionamento do conjunto de relacionamentos.
e) todos os atributos do conjunto de entidades são indexados com a técnica
de árvores binárias.

Participação total e parcial!

A linha dupla indica participação total, e a entidade ligada por linha dupla
exige que ela se relacione com pelo menos uma entidade do outro lado do
relacionamento. Já a linha simples indica o relacionamento, mas pode ser que
nem toda entidade possua um relacionamento. Você lembra disso?

Uma coisa ruim das bancas é não diferenciar entidade de instância de


entidade. Quando se fala da entidade Projeto, em tese, me refiro à entidade
projeto de modo genérico. Quando se fala de cada entidade Projeto, na verdade
estão se referindo às instâncias de entidade, que, na prática, correspondem ao
registros que estão no Banco de Dados, conforme expliquei para você na teoria.
A questão seria bem mais clara se ela, ao invés de falar “cada entidade” do
“conjunto de entidades”, falasse “instância das entidades” das “entidades”.

Nossa resposta certa, alternativa d).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 76 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

24ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) Considere o seguinte diagrama Entidade-Relacionamento, resultante da
modelagem de um banco de dados relacional:

A partir desse diagrama, pode-se afirmar que

a) uma loja não possui todos os produtos.


b) uma loja possui um número par de departamentos.
c) cada departamento pode possuir vários produtos.
d) um mesmo produto não pode estar em mais de uma loja.
e) o número de lojas é impar.

Outra questão para exercitar seu entendimento do modelo E-R. De antemão,


a alternativa c) é a correta, e as demais são premissas falsas, pois fazem
afirmações mais contundentes do que as contidas no diagrama. Exercite seu
entendimento!

25ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) A técnica de diagramação no modelo de Entidade-Relacionamento é bem
simples. Utiliza basicamente um losango para representar ...I... e um retângulo
para representar ...II... .

As lacunas I e II são preenchidas, correta e respectivamente, por

a) relacionamentos – entidades
b) atributos − relacionamentos
c) entidades − relacionamentos
d) entidades − atributos
e) atributos − entidades

Relembrando:

Retângulos: são as entidades.


Losangos: representam os relacionamentos.
Elipses: representam os atributos (ausente neste diagrama).
Linhas: vinculam conjuntos de entidades a conjuntos de relacionamentos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 77 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Linhas duplas: indicam participação total de uma entidade em um conjunto
de relacionamentos.
Resposta certa, alternativa a).

26ª Questão) (FCC – TRT/6ª Região – Analista Judiciário – Tecnologia


da Informação - 2012) Um banco de dados relacional é um banco de dados
projetado segundo o chamado modelo relacional, que é um modelo de banco de
dados baseado na lógica de predicados de primeira ordem. O objetivo do modelo
é o de proporcionar uma linguagem declarativa para a descrição tanto dos dados
como de consultas a seu respeito, de maneira que o usuário declara tanto a
informação contida no banco de dados como a informação que dele deseja extrair,
deixando a cargo do sistema gerenciador do banco de dados a tarefa de
estabelecer estruturas de armazenamento de dados bem como os procedimentos
de recuperação destes dados para responder consultas. O modelo relacional foi
proposto formalmente há mais de 40 anos.

O texto acima está

a) incorreto, porque o modelo relacional é baseado na lógica de predicados


de segunda ordem.
b) correto.
c) incorreto, porque o modelo relacional não conduz naturalmente a uma
linguagem declarativa de descrição de dados ou consultas.
d) incorreto, porque nos bancos de dados relacionais, a tarefa de descrever
os procedimentos de recuperação dos dados para a resposta a consultas é tarefa
do usuário.
e) incorreto, porque o modelo relacional foi proposto há menos de 30 anos.

Tópicos importantes da longa sentença:

Lógica de predicados de primeira ordem: sem nos aprofundarmos muito, a


lógica de predicados de primeira ordem está refletida em frases como “cada
departamento possui um ou mais funcionários”, ou “cada funcionário possui um
único gerente”.

“...a cargo do sistema gerenciador do banco de dados a tarefa de estabelecer


estruturas de armazenamento de dados bem como os procedimentos de
recuperação destes dados para responder consultas”:o que isso quer dizer? Vou
direto a um exemplo. O site da TAM é uma aplicação. Quando você procura uma
passagem para um trecho em um determinado dia e clica em cima do botão
compre seu bilhete, não é você usuário que está buscando no banco de dados a
informação. Você está apenas declarando o que quer. Será o SGBD que, ao
receber essas informações por meio da aplicação do site, realizará a busca na base
de dados e trará a informação mastigada. Aí a aplicação do site, com as

Prof. Victor Dalton


www.estrategiaconcursos.com.br 78 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
informações já extraídas, monta pra você a tela dos trechos disponíveis pra
compra. Entendeu?
Agora releia a sentença. Já ficou mais “digerível”. Eu sei que existe muita
nomenclatura técnica e nova para você, mas a leitura repetitiva destes termos vai
fazer com que você cada vez mais absorva esse conteúdo com naturalidade. A
frase é longa, mas está completamente correta.

Alternativa b). As demais alternativas estão desmentidas dentro da própria


frase gabarito.

27ª Questão) (ESAF – SUSEP – Analista Técnico – Tecnologia da


Informação - 2010) Em Sistemas Gerenciadores de Bancos de Dados (SGBD),
existem as seguintes categorias de restrições de integridade:
a) Integridade de domínio, Integridade de vazio, Integridade de chave,
Integridade referencial.
b) Integridade de acesso, Integridade de entrada, Integridade de saída,
Integridade referencial.
c) Integridade de domínio, Integridade de completude, Integridade de chave,
Integridade posicional.
d) Integridade de cardinalidade, Integridade de vazio, Integridade de
autorização de acesso, Integridade associativa.
e) Integridade de generalização/especialização, Integridade de usuários,
Integridade de chave, Integridade referencial.

São restrições de integridade:

 Domínio – amarrando os possíveis valores de um atributo (inteiro,


string, não nulo, positivo, tipo, etc.)
 Vazio – dizer se um campo pode ou não ser null. Não deixa de ser
um subitem da integridade de domínio.
 Chave – impedindo que uma chave primária se repita, ou seja nula;
 Referencial – assegurando que uma chave estrangeira possua
respectiva associação na tabela de origem;

Resposta certa, alternativa a).

28ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) No projeto de bancos de dados relacionais é usual a tarefa de permitir
ou restringir a presença de valores nulos para determinados atributos. O
significado de um valor nulo é

Prof. Victor Dalton


www.estrategiaconcursos.com.br 79 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
a) o valor zero.
b) um valor especial designado pelo código ASCII da tecla #.
c) o valor correspondente à tecla F12.
d) a ausência de valor.
e) um valor fora do domínio do atributo.

O correto, e mais coerente dentre as alternativas, é que o valor nulo


representa a ausência de valor.

Alternativa d).

29ª Questão) (FCC – ALESP – Agente Técnico Legislativo –


Administração de Banco de Dados – 2010) NÃO é uma restrição de
integridade básica:
a) de vazio.
b) de domínio.
c) de entidade.
d) de chave.
e) referencial.

Alternativa c).

30ª Questão) (FCC – TRT/1ª Região – Analista Judiciário – Tecnologia


da Informação – 2014) No modelo entidade-relacionamento utilizado para
modelar Bancos de Dados relacionais, quando se indica que há um conjunto de
relacionamentos do tipo muitos para muitos entre 2 conjuntos de entidades A e
B, significa que

(A) uma entidade do conjunto A está sempre associada a mais de uma


entidade de conjunto B e vice-versa.
(B) uma entidade do conjunto A pode estar associada a várias entidades do
conjunto B e vice-versa.
(C) os conjuntos de entidades A e B possuem, cada um deles, número igual
de atributos.
(D) os conjuntos de entidades A e B possuem diversos atributos com a
possibilidade de terem valores nulos.
(E) uma entidade do conjunto B está associada a apenas uma entidade do
conjunto A, mas uma entidade do conjunto A está associada a várias entidades
do conjunto B.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 80 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Em um relacionamento muitos-para-muitos entre A e B, uma entidade de A
poderá se relacionar com várias entidades de B, assim como uma entidade de B
se relaciona com várias entidades de A.

Resposta certa, alternativa b).

31ª Questão) (ESAF – Superintendência de Seguros Privados –


Tecnologia da Informação - 2010) Um modelo de banco de dados relacional
deve conter no mínimo a definição de
a) tabelas, colunas das tabelas e restrições de integridade.
b) títulos, colunas dos atributos e restrições de integridade.
c) títulos, colunas das tabelas e restrições de manutenção.
d) tabelas, relações entre linhas das tabelas e opções de integridade.
e) associações de restrição, colunas referenciadas e restrições de
desempenho.

Pois então, um banco de dados relacional, em sua concepção, necessita de


suas tabelas, das colunas das tabelas(os seus atributos), e de suas restrições de
integridade, fundamentais para a consistência do banco de dados.

Resposta correta, alternativa a).

32ª Questão) (FCC – TCE/AM – Analista Técnico de Controle Externo –


Tecnologia da Informação - 2012) Em relação a bancos de dados, uma chave
primária pode ser formada por uma ou mais colunas e deve possuir um
identificador único para
a) cada uma das colunas pertencente a essa chave.
b) cada coluna da tabela.
c) uma tupla (formada por linhas e colunas).
d) todos os registros da tabela.
e) cada linha da tabela.

Todo registro em um banco de dados precisa de um atributo, ou vários, que


possibilitem caracterizar aquele registro no banco como único. Ex:

cod_cliente endereco telefone cidade estado


1 Rua Siqueira (51) 3214- Porto Alegre RS
Campos, 1044 5000
2 Rua Siqueira (51) 3214- Porto Alegre RS
Campos, 1044 5000

Prof. Victor Dalton


www.estrategiaconcursos.com.br 81 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
3 Avenida Mauá, 1055 (51) 3224- Porto Alegre RS
3364
4 Avenida Mauá, 1055 (51) 3224- Porto Alegre RS
3364

A diferenciação entre as tuplas (ou registros, que são as linhas da tabela)


se faz por meio da chave primária. No caso, o atributo codigo_cliente.

A chave primária é o atributo(coluna) ou atributos(colunas), que


asseguram que cada tupla (linha) da tabela é única.

Resposta certa, alternativa e).

33ª Questão) (ESAF – Superintendência de Seguros Privados –


Tecnologia da Informação – 2010) Em Abordagem Relacional
a) uma chave relacionada é uma coluna cujos valores distinguem atributos
de relacionamentos.
b) a chave estrangeira é o mecanismo que permite a implementação de
relacionamentos em um banco de dados relacional.
c) a chave estrangeira é uma coluna ou uma combinação de colunas cujos
valores não aparecem na chave primária de uma tabela.
d) uma chave primária é uma linha ou uma combinação de linhas cujos
valores distinguem uma coluna das demais dentro de uma tabela.
e) a chave estrangeira é uma linha ou uma combinação de linhas cujos
valores necessariamente aparecem na chave primária de uma tabela.

Opa, você já consegue responder esta questão? Vejamos as alternativas:

a) Tão errada que lhe confunde. Uma chave primária é uma coluna ou
uma combinação de colunas cujos valores distinguem uma tupla
das demais dentro de uma tabela.
b) Certa.
c) Não necessariamente. Chaves estrangeiras podem integrar chaves
primárias de uma tabela!
d) Quase! Uma chave primária é uma coluna ou uma combinação de
colunas cujos valores distinguem uma linha das demais dentro de
uma tabela.
e)Não necessariamente. A chave que restringe unicidade (a primária) pode
ou não ser a chave que restringe relacionamento (a estrangeira), pois são
conceitos independentes.

Nossa resposta correta, portanto, é a letra b).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 82 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

34ª Questão) (FCC – TRT/6ª Região – Analista Judiciário – Tecnologia


da Informação - 2012) No modelo entidade-relacionamento,
a) entidades podem ter atributos, mas relacionamentos não podem ter
atributos.
b) uma chave é um conjunto de atributos cujos valores identificam um
relacionamento de maneira única.
c) um relacionamento é uma associação entre atributos.
d) todo relacionamento tem uma chave.
e) uma chave é um conjunto de atributos cujos valores identificam uma
entidade de maneira única.

Outra questão do modelo entidade-relacionamento. Vamos lá:

a) Entidades podem ter atributos? Devem! Relacionamentos podem ter


atributos? Podem! Não é obrigação;
b) Errada. Explico na alternativa e).
c) Errada! O relacionamento associa entidades!
d) Não necessariamente. Quando um relacionamento vira uma tabela, a
chave pode ser a composição das chaves primárias das entidades que
relaciona. Tem relacionamentos que nem tabela viram (como o exemplo
usuario – comentario).
e) Correta, embora a questão não esteja bem redigida. No modelo
entidade-relacionamento, ou seja, no nível conceitual, não se fala em
tuplas, ou registros. Você logo deve ter pensado: uma chave é um
conjunto de atributos cujos valores identificam um
(registro/tupla/linha da tabela) de maneira única. Isso está correto,
quando falamos do modelo relacional. No modelo ER, quando queremos
nos referir a um registro, fala-se em instância ou ocorrência da
entidade. Logo, a redação mais adequada seria “uma chave é um
conjunto de atributos cujos valores identificam uma ocorrência de
entidade de maneira única”, ou “uma chave é um conjunto de atributos
cujos valores identificam uma instância de entidade de maneira única”.
De qualquer forma, a FCC não anulou a questão.

35ª Questão) (FCC – TJ/RJ – Analista Judiciário – Analista de Suporte


– 2012) Considere:
I. Se uma transação é concluída com sucesso (operação commit bem
sucedida), então seus efeitos são persistentes.
II. Ou todas as ações da transação acontecem, ou nenhuma delas acontece.
As propriedades (I) e (II) das transações em SGBDs, significam,
respectivamente,
a) durabilidade e consistência.
Prof. Victor Dalton
www.estrategiaconcursos.com.br 83 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
b) persistência e automação.
c) isolação e atomicidade.
d) durabilidade e atomicidade.
e) consistência e persistência.

Idealmente, toda transação em um banco de dados deverá ser:

Atômica: ou a transação é feita ou não é feita. Parece óbvio, mas transações


complexas em um banco, envolvendo várias tabelas, podem sofrem interrupções
inesperadas, ou não conseguirem terminar por entrar em conflito com outra que
ocorra ao mesmo tempo. Nesse caso, o SGBD deverá ser capaz de reverter o que
parcialmente foi modificado (realizar o rollback);

Consistente: os dados deverão permanecer íntegros e obedientes às regras


do banco de dados (metadados);

Isolada: o resultado de uma transação executada concorrentemente a


outra deve ser o mesmo que o de sua execução de forma isolada. Operações
exteriores a uma dada transação jamais verão esta transação em estados
intermediários.

Durável: os efeitos de uma transação em caso de sucesso (commit) devem


persistir no banco de dados mesmo em presença de falhas. os dados modificados
devem estar disponíveis em definitivo.

Portanto, alternativa d).

36ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


– 2013) O conceito de transações em um banco de dados relacional envolve
algumas propriedades conhecidas e agrupadas sob o acrônimo ACID. A letra D
nesse acrônimo significa Durabilidade, sendo que seu conceito indica que
a) todas as regras de consistência previamente programadas no banco de
dados serão automaticamente excluídas.
b) cada transação é independente das demais, não gerando influência nas
demais transações eventualmente existentes.
c) os tipos de dados definidos não dependem do sistema gerenciador de
banco de dados utilizado.
d) ao término de uma transação, eventuais alterações em valores das tabelas
do banco de dados devem persistir, mesmo que ocorram falhas no sistema de
banco de dados.
e) é necessário utilizar um sistema gerenciador de banco de dados capaz de
implementar mecanismos de controle de concorrência.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 84 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Alternativa d).

37ª Questão) (UEL – SEAP – Analista de Sistemas – 2009) Os sistemas


gerenciadores de bancos de dados devem garantir que as transações por eles
suportadas possuam o conjunto das seguintes propriedades:

a) Atomicidade, consistência, isolamento, durabilidade.


b) Atomicidade, consistência, independência de dados, durabilidade.
c) Atomicidade, consistência, independência de dados, isolamento.
d) Atomicidade, consistência, isolamento, replicação.
e) Atomicidade, consistência, durabilidade, robustez.

Resposta certa, alternativa a).

38ª Questão) (FCC – SEFAZ/SP – Agente Fiscal de Rendas – 2013) Para


responder às próximas questões, 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 @.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 85 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
d) forem admitidos apenas letras e espaços como caracteres válidos.
e) não forem admitidos valores nulos.

Atributos atômicos são aqueles que não podem ser divididos! Alternativa
b).

39ª Questão) (FCC – DPE/SP – Agente de Defensoria Pública –


Analista de Sistemas - 2013) Quando da modelagem de dados de um banco
de dados relacional, podem ser utilizados atributos compostos, sobre os quais é
correto afirmar que
a) podem ser decompostos em outros atributos simples ou ainda compostos.
b) são sempre formados por um atributo do tipo numérico e um do tipo
literal.
c) não podem conter atributos do tipo booleano em sua formação.
d) não admitem valores nulos em sua composição.
e) fazem parte, obrigatoriamente, da chave primária do conjunto de
entidades ao qual são vinculados.

Alternativa a).

40ª Questão) (FCC – SEFAZ/SP – Agente Fiscal de Rendas – 2013) 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.

A chave estrangeira é um único atributo, que estabelece um


relacionamento com uma chave primária em outra tabela, embora você possa ter
várias chaves estrangeiras em uma mesma tabela. A chave primária, por sua
vez, é um atributo ou conjunto de atributos que identifica um registro de
maneira única em uma tabela.

Alternativa d).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 86 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

41ª Questão) (FCC – Prefeitura de SP – Auditor Fiscal Tributário


Municipal I – 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.

Questão desafio! Mais para você enxergar os conceitos todos se


relacionando, essa é questão típica para quem é de Tecnologia da Informação...

Prof. Victor Dalton


www.estrategiaconcursos.com.br 87 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

O projeto conceitual, você já sabe, vem antes do projeto lógico. Ele resulta
em diagramas como o acima: algo bem alto nível, pro projetista sentar com o
cliente e conversar, para saber se é isso que ele realmente quer. No projeto lógico
já começa a ser definido como as tabelas ficam na base de dados. Perceba também
algo que eu lhe falei antes: nesta questão, nitidamente relação é tabela!

Vou colocar o diagrama novamente:

Antes de mais nada, um erro da banca: perceba que CodLote deveria estar
em uma elipse. Mas isso não nos impede de prosseguir.

Agora, comecemos pelas entidades. Inevitavelmente, as entidades virarão


tabelas no banco de dados. Vou escrevê-las em notação relacional, que você
facilmente entenderá:

Produto (CodProduto, Nome);


Lote (CodLote);
Loja (CodLoja, Local);

Os atributos sublinhados são as chaves. Há autores que sublinham as chaves


primárias “cheio” e as estrangeiras “tracejado”, enquanto outros sublinham todas
“cheio”. Na prática, isso não é um problema, pois é possível reconhecer as chaves
primárias e estrangeiras.

Nesse caso, as chaves são todas primárias. Atributos do tipo código quase
sempre são chaves.

Agora, veja o relacionamento ExpostoEm. Ele é a chave para resolvermos


o exercício.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 88 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
O produto, de um lote, exposto em uma loja, acrescido dos campos unidade
e quantidade (já impostos pela questão), precisa de uma tabela de ligação.
Podemos descrevê-la como:

ExpostoEm (CodProduto, CodLote, CodLoja, Unidade, Quantidade)

Captou? CodProduto, CodLote e CodLoja são todas chaves estrangeiras, e,


juntas, compõem a chave primária dessa nova relação.

Agora volte e leia as alternativas.


A alternativa a) propõe exatamente o que eu falei aqui. Está correta, mas
vejamos as outras;

As alternativas b) e c) propõem levar os atributos Unidade e Quantidade para


as tabelas Lote ou Loja. Mas o próprio diagrama mostra que esses atributos, dado
um determinado registro, só existem quando um produto de um lote é exposto
em uma loja. Então estão erradas;

Já as alternativas d) e e) começam “menos mal”, criando a tabela


ExpostoEm, criando um CodExposicao, inserindo Unidade e Quantidade. Mas ela
erra ao tentar colocar CodExposicao como chave estrangeira em outra tabela. Por
que? Porque a tabela que contiver esse código, seja qual for, obrigatoriamente
teria que estar “exposto em”. E a relação, conforme foi definida no projeto
conceitual, não funciona assim. Afinal de contas, somente quando o produto de
um lote for exposto em uma loja é que se definirão unidade e quantidade. Podem
haver produtos não expostos, lojas que não estão expondo e lotes não levados à
exposição.

Compreendido? Difícil? Se você entendeu esse exercício, sua visão de banco


de dados está excelente! Caso contrário, leia um pouco mais, mas não deixe sua
consciência pesar por causa disso, tudo bem?

42ª Questão) (FCC – MPE/CE – Analista Ministerial – Ciências da


Computação - 2013) O modelo de dados relacional é baseado em uma coleção
de ...I... . O usuário pode consultá-las e inserir, excluir e atualizar ...II... . A ...III...
define um conjunto de operações sobre relações e as linguagens de consulta são
baseadas nela. O modelo de dados ...IV... é amplamente usado para o projeto do
banco de dados, oferecendo uma representação gráfica para visualizar dados,
relacionamentos e ...V....

Preenchem as lacunas, correta e respectivamente, o que consta em

Prof. Victor Dalton


www.estrategiaconcursos.com.br 89 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Vamos fazer essa questão raciocinando juntos?

O modelo de dados relacional é baseado em uma coleção de (tabelas ou


relações). Descartamos apenas a alternativa e).

O usuário pode consultá-las e inserir, excluir e atualizar (registros ou


tuplas). Só sobrou a alternativa c)!

A álgebra relacional define um conjunto de operações sobre relações e as


linguagens de consulta são baseadas nela. O modelo de dados E-R é amplamente
usado para o projeto do banco de dados, oferecendo uma representação gráfica
para visualizar dados, relacionamentos e restrições.

43ª Questão) (FCC – ALESP – Agente Técnico Legislativo –


Administração de Banco de Dados e Arquitetura de Dados - 2010) Maneira
alternativa de observação de dados de uma ou mais entidades − tabelas −, que
compõe uma base de dados. Pode ser considerada como uma tabela virtual ou
uma consulta armazenada. Trata-se de

a) table shadow.
b) view.
c) shadow table.
d) table blour.
e) blour table.

Sem mais, meritíssimo. Tabela virtual – View!

Alternativa b).

44ª Questão) (FCC – BACEN – Analista – Área 2 – 2005 - adaptada)


Sobre definição e manipulação de visão, analise:

Prof. Victor Dalton


www.estrategiaconcursos.com.br 90 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
I. Uma VIEW provê mais segurança, pois permite esconder parte dos dados
da tabela real.
II. Os dados que compõem a VIEW são armazenados separadamente da
tabela real.
III. Uma linha inserida na VIEW, com todas as colunas, será inserida na
tabela real.

É correto o que consta APENAS em

a) I,II e III.
b) I e II, somente.
c) I e III, somente.
d) II e III, somente.
e) I, somente.

Analisando os itens:

I. Correto. Podemos ocultar alguns atributos da tabela real em uma view,


seja por segurança ou por conveniência ao usuário final.
II. Errado! View não armazena dados! A view é uma tabela virtual que
mostra os elementos de outras tabelas!
III. Correto. Para ser atualizável, via de regra, uma view deverá:

 Influenciar apenas uma tabela do banco de dados;

 Em caso de atributos ocultos na view, ou esse atributo deve ser


gerado automaticamente (no caso de um código, por exemplo),
ou possuir valor default, ou poder ser nulo (null).

No caso de uma view que possui todas as colunas de uma tabela real, uma
inserção de uma linha, nessa view, insere, na verdade, um registro na tabela real.

45ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012) Na


modelagem Entidade-Relacionamento (ER) uma propriedade importante de um
relacionamento é a de quantas ocorrências de uma entidade podem estar
associadas a uma determinada ocorrência através do relacionamento. Tal
propriedade é chamada de

a) dependência funcional

b) normalização

c) generalização/especialização

d) relacionamento identificador

Prof. Victor Dalton


www.estrategiaconcursos.com.br 91 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
e) cardinalidade.

Quantidades de ocorrências associando-se com outras ocorrências por meio


de um relacionamento. Hmm.... inevitavelmente estamos falando de
cardinalidade.

Alternativa e).

46ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012) A


definição “software que incorpora as funções de definição, recuperação e alteração
de dados em um banco de dados”, melhor corresponde a:

a) Modelo de banco de dados.

b) Linguagem de Consulta Estruturada (SQL).

c) Sistema de Gerência de Banco de Dados (SGDB).

d) Interpretador eXtended Markup Language (XML).

e) Sistemas de arquivos.

Depois que a gente estuda fica trivial, não é mesmo? Alternativa c).

47ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012)


Como se denomina o modelo de dados abstrato que descreve a estrutura de um
banco de dados de forma independente de um SGDB particular?

a) Modelo físico.

b) Modelo de dados.

c) Modelo virtual.

d) Modelo conceitual.

e) Modelo lógico.

Questões diferentes, bancas diferentes, e ocorrem as mesmas perguntas! O


modelo de dados que é totalmente independente de um SGBD particular é o
modelo conceitual.

Alternativa d).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 92 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

48ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012) A


técnica de modelagem de dados mais difundida é a abordagem entidade-
relacionamento. À luz dessa modelagem, o que se entende por relacionamento?

a) O conjunto de associações entre as entidades que serão armazenadas no


banco de dados.

b) As informações de uma determinada entidade do banco de dados.

c) Um par específico de entidades.

d) A definição dos possíveis valores que uma determinada entidade pode


assumir.

e) Um identificador que distingue de forma unívoca a ocorrência de uma


entidade das demais ocorrências dessa mesma entidade.

O relacionamento é o elemento que associa as entidades, permitindo a


implementação do modelo relacional. Portanto, alternativa a). Apenas para
saciar a sua curiosidade,

A alternativa b) refere-se a registro;

A alternativa c) não diz nada;

A alternativa d) cita a restrição de domínio; e

A alternativa e) cita a chave primária.

49ª Questão) (CETRO – Prefeitura de Manaus/SEMSA – Analista de


Sistemas – 2012) Assinale a alternativa que apresenta a representação
adequada para uma entidade forte no modelo E-R.

a) Losango.

b) Retângulo de borda dupla.

c) Pequeno retângulo de cantos arredondados.

d) Losango de borda dupla.

e) Retângulo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 93 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Uma entidade forte, ou entidade normal, é um retângulo. Os relacionamentos
são losangos.

As entidades fracas são representadas pelos retângulos de borda dupla, e o


losango de borda dupla indica relacionamento envolvendo entidade fraca. Se você
marcar “Pequeno retângulo de cantos arredondados”, eu paro a aula por aqui, rs.

Alternativa e).

50ª Questão) (CETRO – ANVISA – Analista Administrativo Área 5 –


2013) Com relação às chaves substitutas em banco de dados, analise as
assertivas abaixo.

I. Sempre envolvem exatamente um atributo.

II. Elas servem somente para representar o fato de que entidades


correspondentes existem.

III. Quando uma entidade é excluída, o valor de sua chave substituta deverá
ser alocado para a primeira nova entidade adicionada.

É correto o que se afirma em

a) I e III, apenas.

b) I e II, apenas.

c) II e III, apenas.

d) I, II e III.

e) II, apenas.

A chave substituta, ou surrogate key, ou chave artificial, é um campo,


normalmente auto incremental, que pode (não é obrigatório) ser utilizado para
definir a chave primária de uma tabela, de uma maneira genérica. É útil,
particularmente, para substituir chaves primárias compostas por muitos atributos,
o que costuma impactar negativamente a performance do banco de dados.

* Nome Telefone
1 Paulo (11) 99999-8888
2 Paulo (11) 99999-7777
3 Paulo (11) 3030-3131
4 Marta (11) 5678-9012
5 Marta (11) 99988-9876
6 Rita (11) 98765-4321
Chave substituta: coluna não identificada, marcada com *

Prof. Victor Dalton


www.estrategiaconcursos.com.br 94 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Algumas características da chave substituta:

 O valor é único para a tabela, portanto nunca reutilizado (ou seja, em


caso de exclusão, o número não será reutilizado);
 O valor é gerado pelo sistema(automaticamente);
 O valor não é manipulável pelo usuário ou aplicação;
 O valor não contém nenhum significado semântico;
 O valor não é visível para o usuário ou aplicação (no caso de
modelagem relacional);
 O valor não é composto de vários valores a partir de diferentes
domínios.

Voltando à questão, percebe-se que apenas o item III é equivocado, uma


vez que o valor da chave substituta nunca será reutilizado.

Alternativa b).

51ª Questão) (CETRO – ANVISA – Analista Administrativo Área 5 –


2013) Quanto aos sistemas de gerenciamento de banco de dados, assinale a
alternativa correta.

a) Sua função geral é fornecer uma interface entre o usuário e o sistema de


banco de dados.

b) Sempre tem um gerenciador de transações.

c) O dicionário de dados impõe certos controles sobre a recuperação e


concorrência do banco de dados.

d) A verificação da integridade dos dados deve ser feita somente no tempo


de compilação.

e) Não incluem compiladores de DML.

O SGBD é o conjunto de programas de computador (softwares) responsáveis


pelo gerenciamento de uma base de dados. Seu principal objetivo é retirar da
aplicação cliente (o sistema da empresa propriamente dito) a responsabilidade de
gerenciar o acesso, a manipulação e a organização dos dados. O SGBD
disponibiliza uma interface para que seus clientes possam incluir, alterar ou
consultar dados previamente armazenados. Em bancos de dados relacionais a
interface é constituída pelas APIs (Application Programming Interface) ou drivers
do SGBD, que executam comandos na linguagem SQL (Structured Query
Language).
Prof. Victor Dalton
www.estrategiaconcursos.com.br 95 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Da nossa explanação, a alternativa a) mostra-se correta. Quanto à demais:

Sempre tem um gerenciador de transações – errado. SGBDs mais


simplórios não possuem tal gerenciamento;

O dicionário de dados impõe certos controles sobre a recuperação e


concorrência do banco de dados – dicionário de dados guarda os metadados
do BD. Ele não é responsável pelo controle de transações;

A verificação da integridade dos dados deve ser feita somente no


tempo de compilação – a integridade dos dados é verificada pelas restrições
impostas (chaves primárias e estrangeiras, e demais restrições de integridade).
Elas são implementadas por ocasião da definição do esquema de dados, e
verificadas em tempo de execução.

Não incluem compiladores de DML – SGBDs precisam ao menos


interpretar a linguagem DDL (Data Definition Language), que serve para a
definição do esquema do banco de dados, e a DML (Data Manipulation Language),
voltada para a manipulação dos dados.

52ª Questão) (FCC – TRT 2ª Região – Analista Judiciário – Tecnologia


da Informação – 2014) Em alguns casos, dois ou mais valores de atributos em
um modelo de Entidade-Relacionamento estão relacionados. Por exemplo, os
atributos Idade e Data de Nascimento de uma pessoa. Para uma Entidade-Pessoa
em particular, o valor de Idade pode ser determinado pela data corrente e o valor
de Data de Nascimento da pessoa. Portanto, o atributo Idade é chamado atributo
...I... do atributo Data de Nascimento, que, por sua vez, é chamado atributo ...II...
.

As lacunas I e II são, correta e respectivamente, preenchidas com:

(A) armazenado - derivado


(B) derivado - armazenado
(C) multivalorado - monovalorado
(D) identificador - complexo
(E) resultante - unívoco

O atributo Idade é um atributo derivado, pois pode ser calculado com base
no atributo armazenado Data de Nascimento, tendo o dia atual como referência.

Resposta: alternativa b).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 96 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
53ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Um SGBD
multiusuário deve permitir que diversos usuários acessem o banco de dados ao
mesmo tempo. Isso é essencial se os dados para as várias aplicações estão
integrados e mantidos em um único banco de dados. O SGBD deve incluir um
software de controle de concorrência para garantir que muitos usuários, ao tentar
atualizar o mesmo dado, o façam de um modo controlado, para assegurar que os
resultados das atualizações sejam corretos. Por exemplo, quando muitos
atendentes tentam reservar um lugar em um voo, o SGBD deve garantir que cada
assento possa ser acessado somente por um atendente de cada vez, para fazer a
reserva de apenas um passageiro.

Em SGBD, a este conceito se dá o nome de

a) acesso simultâneo.
b) semáforo de acesso.
c) transação.
d) modularização.
e) polimorfismo.

Percebeu que a questão se parece muito com a explicação da teoria?

Isso ocorre porque a FCC também se baseou no Elmasri e Navathe para


apresentar o exemplo. No caso, a banca está explicando o conceito de
Processamento de Transação Multiusuário.

Não gostei da forma que a banca apresentou as alternativas, porém, a “mais


correta” é a letra c).

54ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Um SGBD


possui a capacidade de mudar o esquema interno sem ter de alterar o esquema
conceitual, consequentemente não havendo necessidade de alteração do esquema
externo. As mudanças no esquema interno podem ser necessárias para que alguns
arquivos físicos possam ser reorganizados, por exemplo, pela criação de
estruturas de acesso adicionais para aperfeiçoar o desempenho da recuperação
ou atualização de dados.

Essa característica de um SGBD é denominada

a) modelo lógico de dados.

b) modelo físico de dados.

c) independência modular.

d) representação conceitual.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 97 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
e) independência física de dados.

Independência física é a capacidade de alterar o esquema interno sem


precisar modificar o esquema conceitual.

Resposta certa, alternativa e).

55ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Uma


característica fundamental da abordagem de um banco de dados é que o sistema
de banco de dados possui não apenas o banco de dados, mas também uma
completa definição ou descrição ...I... desse banco de dados e ...II.... Essa
definição está armazenada no catálogo do SGBD, que contém informações como
a estrutura de cada arquivo, o tipo e o formato de armazenamento de cada item
de dado e várias restrições sobre os dados.

As lacunas I e II são correta e, respectivamente, preenchidas por:

a) do domínio - seus casos de uso

b) do conteúdo binário - suas linhas e colunas

c) das tabelas - seus administradores

d) da estrutura - suas restrições

e) em UML - outros bancos deste sistema

Na natureza de autodescrição de um sistema de banco de dados, entendemos


que o sistema de banco de dados precisa ir além dos dados propriamente ditos.
Ele precisa descrever sua estrutura (quais são suas tabelas, tamanho do banco,
etc...) e quais são suas restrições (domínio dos dados, relacionamento entre as
tabelas, dentre outros).

Resposta certa, alternativa d).

56ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) No


processamento tradicional de arquivos, a estrutura do arquivo de dados está
embutida no programa da aplicação, sendo assim, qualquer mudança na estrutura
de um arquivo pode exigir alterações de todos os programas que acessam esse
arquivo. Aplicações desenvolvidas com foco em SGBD não exigem essas

Prof. Victor Dalton


www.estrategiaconcursos.com.br 98 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
alterações na maioria dos casos, pois a estrutura dos arquivos de dados é
armazenada no catálogo do SGDB separadamente do programa de acesso.

A este isolamento entre programas e dados é dado o nome de

a) abstração de dados.

b) acesso remoto.

c) independência funcional.

d) independência modular.

e) modelo relacional.

Segundo Navathe, “qualquer mudança na estrutura de dados do SGBD não


exige mudanças nos programas que acessam o banco de dados. A estrutura dos
arquivos de dados é armazenada no catálogo do SGBD separadamente dos
programas de acesso.

Essa propriedade é chamada de independência programa-dados.”

Ainda, existe a independência programa-operação, na qual a


implementação (método) da operação é especificada separadamente e pode ser
alterada sem afetar a interface.

Porém, a independência programa-dados e a independência programa-


operação só são possíveis em virtude de uma característica do SGBD, que é a
abstração de dados, que é o fato de o SGBD oferece aos usuários uma
representação conceitual de dados, que não inclui muitos detalhes de como os
dados são armazenados ou como as operações são implementadas.

Novamente, não gostei da abordagem da banca, que apenas descreveu a


independência programa-dados, com o objetivo de chegar a uma característica
maior, que é a abstração de dados.

Na verdade, a abstração de dados é a característica do SGBD que propiciam


a independência programa-dados e programa-operação.

Resposta certa, alternativa a).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 99 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
57ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) A maioria
das aplicações de um banco de dados tem certas restrições de integridade que
devem complementar os dados. O SGBD deve prover funcionalidades para a
definição e a garantia dessas restrições. O tipo mais simples de restrição de
integridade envolve a

a) especificação de um tipo de dado para cada item de dados.

b) indexação da tabela por valores ascendentes ou descendentes, conforme


a restrição a ser integrada.

c) criação de visualizações (views) para as colunas de uma tabela.

d) definição do modelo lógico de dados juntamente com as características


físicas do domínio.

e) utilização de chaves estrangeiras em conjunto com a definição de um


gatilho (trigger) para determinados eventos.

A restrição de integridade mais comum é a restrição de domínio, afinal,


todos os atributos de um banco de dados precisam ser tipificados, no mínimo.

Resposta certa, alternativa a).

58ª Questão) (FCC – SEFAZ/PE – Auditor Fiscal – 2014) Um Sistema de


Gerenciamento de Banco de Dados (SGBD) é um software com recursos
específicos para facilitar a manipulação das informações dos bancos de dados e o
desenvolvimento de programas aplicativos. A forma como os dados serão
armazenados no banco de dados é definida pelo modelo do SGBD. Os principais
modelos são: hierárquico, em rede, orientado a objetos e

(A) funcional.
(B) procedural.
(C) orientado a serviços.
(D) relacional.
(E) orientado a componentes.

O modelo relacional é um dos modelos mais cobrados em provas. As


demais sentenças nem se aplicam a banco de dados.

Resposta certa: alternativa d).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 100 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
59ª Questão) (FCC – TCE/RS – Auditor Público Externo – Técnico em
Procesamento de Dados – 2014) Considerando a modelagem de dados de um
banco de dados relacional, há diversos conceitos envolvendo conjuntos de
entidades. Um conceito correto sobre conjuntos de entidades e seus atributos é

(A) um atributo do tipo derivado é aquele que pode ser dividido em duas ou
mais partes, sem perda de significado.

(B) um atributo de um conjunto de entidades é multivalorado se for do tipo


literal com mais de 20 caracteres.

(C) um atributo de um conjunto de entidades é monovalorado se for do tipo


numérico.

(D) um conjunto de entidades fraco é aquele que não tem atributos


suficientes para formar uma chave primária.

(E) um conjunto de entidades forte é aquele que tem apenas atributos literais
ou numéricos, não contendo atributos do tipo data.

As alternativas são todas nonsense, à exceção da letra d). Realmente,


entidade fraca é aquela que não possui atributos “capazes” de formar uma chave
primária.

60ª Questão) (ESAF – Analista de Finanças e Controle –


Desenvolvimento de Sistemas de Informação – 2008) Em linhas gerais,
normalizar um banco de dados é identificar o melhor lugar onde cada dado
pertence. A normalização é uma abordagem de projeto que minimiza a
redundância e otimiza as estruturas de dados, colocando os elementos de
informações nos grupos apropriados. Com relação às formas normais, é correto
afirmar que uma tabela está na

a) segunda forma normal (2FN), se e somente se estiver na primeira forma


normal (1FN) e todos os atributos não-chave forem totalmente dependentes da
chave primária.
b) primeira forma normal (1FN), se e somente se todos os domínios básicos
contiverem somente valores não atômicos, isto é, atributos multivalorados.
c) terceira forma normal (3FN), se e somente se estiver na segunda forma
normal (2FN) e todos os atributos não-chave forem independentes da chave
primária.
d) forma normal de Boyce/Codd (BCNF), se e somente se cada determinante
for uma chave estrangeira.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 101 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
e) quarta forma normal (4FN), se somente se estiver na terceira forma
normal (3FN) e existirem dependências multivaloradas.

Revisando as formas normais:

1ª Forma Normal – uma tabela está na primeira forma normal se não


possuir atributos multivalorados. Lembro que um domínio é atômico se os seus
elementos forem considerados como indivisíveis. Por consequência, um atributo
multivalorado não é atômico, por permitir que este atributo seja dividido em
tantas tuplas quanto forem os itens do conjunto multivalorado. Vimos os vários
tipos de atributos algumas questões atrás, e sei que você se lembra. É uma
definição bem tranquila de assimilar. Veja abaixo uma tabela que não está na
primeira forma normal, e outra que está:

Nome Telefone
Paulo (11) 99999-8888
(11) 99999-7777
(11) 3030-3131
Marta (11) 5678-9012
(11) 99988-9876
Rita (11) 98765-4321
A tabela acima não está na primeira forma normal (1FN). O atributo telefone
está multivalorado em alguns registros.

Nome Telefone
Paulo (11) 99999-8888
Paulo (11) 99999-7777
Paulo (11) 3030-3131
Marta (11) 5678-9012
Marta (11) 99988-9876
Rita (11) 98765-4321
Agora a tabela encontra-se na 1FN. O atributo multivalorado foi “atomizado”
por meio da criação de tuplas adicionais.

2ª Forma Normal – uma tabela estará na segunda forma normal se, além
de estar na 1FN, todos os seus atributos não-chave forem depender
funcionalmente da chave inteira. Se algum atributo da tabela depender
funcionalmente apenas de parte da chave primária, então este atributo deverá
migrar para outra tabela. Veja este exemplo:

Projetos(codp, tipo, descrição)


EmpregadosProjetos(code,codp, nome, categ, salário, data_início_projeto,
tempo_aloc_projeto)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 102 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
Neste exemplo, os atributos nome, categ e salário da tabela
EMPREGADOSPROJETOS se relacionam apenas com code, ou seja, não ocorre a
dependência funcional total da chave primária. A solução, na segunda forma
normal, seria:

Projetos(codp, tipo, descrição)


Empregados(code, nome, categ, salário)
ProjEmp(codp, code, data_início, tempo_aloc)

3ª Forma Normal – envolve o conceito de dependência transitiva. Para


isso, a tabela deverá estar na 2FN e cada atributo não-chave não pode possuir
dependência transitiva, para cada chave candidata da relação. Na prática, se Z
depende de Y e Y depende de X, sendo que apenas X é chave da relação, esta
tabela não estará na terceira forma normal.
Perceba que, na solução para a segunda forma normal apresentada
anteriormente, salário possui dependência funcional de categoria.
Assim sendo, uma solução na terceira forma normal seria:

Projetos(codp, tipo, descrição)


Empregados(code, nome, categ)
Categorias(categ, salário)
ProjEmp(codp, code, data_início, tempo_aloc)

Forma Normal de Boyce-Codd(BCNF) – além da 3FN, todo atributo não-chave


deve depender funcionalmente diretamente da chave primária, ou seja, não pode
haver dependências entre atributos não-chave. É uma afirmação um pouco mais
forte que a 3FN.

Forma Normal de Boyce Codd (FNBC) – foi proposta como uma forma
mais simples de 3FN, mas acaba sendo mais rígida. Ou seja, toda relação na FNBC
está na 3FN, mas a volta não é obrigatoriamente verdadeira. Uma tabela estará
na BCNF se e somente se estiver na 3FN e todo atributo não chave depender
funcionalmente diretamente da chave primária, ou seja, não há dependências
entre atributos não chave. Nesse caso, todo determinante será chave candidata.

4ª Forma Normal – além da 3FN, não podem existir dependências


multivaloradas.
Veja este exemplo:

Livros(nrol, título, editora, ano_public)


Editoras(editora, cid-edit)
AutAssLiv(nrol, autor, assunto)

Perceba que um mesmo livro que possua vários autores receberá múltiplas
entradas na tabela AutAssLiv com a repetição do atributo assunto. Uma eventual

Prof. Victor Dalton


www.estrategiaconcursos.com.br 103 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
busca nesta tabela, filtrando por assunto, retornaria várias vezes o mesmo livro,
com autores distintos. Seria necessária a aplicação de alguma lógica para que
fosse mostrado um único resultado de livro, com seus diferentes autores.
Isto pode ser contornado com a aplicação da 4FN, a seguir:

Livros(nrol, título, editora, ano_public)


Editoras(editora, cid-edit)
AutLiv(nrol, autor)
AssLiv(nrol, assunto)

5ª Forma Normal – Envolve a noção dependência de junção.


Existem tabelas na 4FN que não podem ser divididas em duas relações sem
perda de informação. Por exemplo:

ProjetoRecurso(CodEmp, CodPrj, Papel)


R1(CodEmp, Papel)
R2(CodPrj, CodEmp)

Sejam as relações R1 e R2 a decomposição da relação ProjetoRecurso. A


tabela ProjetoRecurso indica o empregado envolvido em um projeto e qual o seu
papel. R2 seria uma tabela com o empregado e os possíveis papéis que ele pode
exercer, ao mesmo tempo que R1 seria uma tabela que relaciona os empregados
e seus projetos. Decompor ProjetoRecurso em R2 e R1 implica em perda de
informação, uma vez que não será mais possível saber qual o papel que o
empregado desempenhou em um projeto específico.
Realizar esta decomposição seria aplicar a quinta forma normal.

Normalização não é um assunto simples. Minha sugestão, como sempre, é


ler com muita calma e massificar o conhecimento com os exercícios.

Resposta correta, letra a).

61ª Questão) (FCC – INFRAERO – Analista de Sistema – Banco de


Dados e Administrador de Dados - 2011) Em relação à normalização de dados,
considere:
I. Se existir um atributo multivalorado, deve-se criar um novo atributo que
individualize a informação multivalorada.

II. Se existir um atributo não atômico, deve-se dividi-lo em outros atributos


que sejam atômicos.

III. Todos os atributos primos devem depender funcionalmente de toda a


chave primária.

Os itens I, II e III referem-se direta e respectivamente a

Prof. Victor Dalton


www.estrategiaconcursos.com.br 104 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

a) 1FN, 1FN e 2FN.


b) 1FN, 2FN e 2FN.
c) 1FN, 2FN e 3FN.
d) 2FN, 2FN e 3FN.
e) 2FN, 3FN e 3FN.

Um exercício prático com o que acabamos de ver.

I. e II. Acabar com a multivaloração, de modo a tornar os atributos atômicos


é uma exigência de 1FN;

III. Dependência funcional de toda a chave primária é uma exigência da 2FN.


Resposta certa, alternativa a).

(CESPE – MEC – Analista de Sistema –Administrador de Dados -


2011) Julgue os itens seguintes, a respeito de dependência funcional e
normalização.

62 Quando um esquema de relação tem mais de uma chave, cada uma delas
é denominada chave-candidata, e, nesse caso, deve-se decompor a relação com
base nas dependências funcionais até que somente uma chave primária
permaneça na relação.

Errada. Você se lembra da chave candidata? Chave candidata é um


atributo da tabela que também garante que aquele registro na tabela seja único
(ou seja, é um atributo candidato a ser chave, mesmo que, na implementação do
banco de dados, não tenha sido escolhida como tal). Imagine uma tabela Pessoa
com os campos CPF, RG e TituloEleitor. Todos esses elementos serão únicos na
tabela (todos são chaves candidatas), mas você não precisa criar uma tabela para
cada um deles, só por causa disso.

63 Um atributo Y possui uma dependência funcional do atributo X se, para


cada valor do atributo X, existe exatamente um único valor do atributo Y. A
dependência funcional é representada por X -> Y.

Certa. Definição correta de dependência funcional.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 105 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
64 A normalização de dados é o processo da análise de determinados
esquemas de relações com base em suas dependências funcionais e chaves
primárias. Esse processo visa alcançar as propriedades desejáveis de maximização
da redundância e de minimização das anomalias de inserção, exclusão e
atualização.

Errada! A normalização visa minimizar redundâncias. O restante da


sentença está correto.

(CESPE – INPI – Analista – Gestão de TI/Desenvolvimento - 2013)


Acerca de normalização de dados, julgue os itens seguintes.

65 Ao se realizar uma modelagem para Data Warehouse, a forma


normalizada Snow Flake permite que as dimensões sejam modeladas na 3FN
(terceira forma normal). Dessa forma, todo modelo Snow Flake na 3FN estará
necessariamente também na forma normal BCNF (boyce-codd), visto que ambas
são baseadas no conceito de dependência transitiva.

Errada! Já sabemos que todo modelo de dados na BCNF está na 3FN, mas
nem sempre modelos na 3FN estão na FNBC.

66 Um esquema de relação X estará na 2FN se todo atributo não primário A


em X tiver dependência funcional total da chave primária de X.

Errada! Faltou afirmar que o esquema também precisa estar na 1FN.

67 A primeira forma normal (1FN) é considerada parte da definição formal,


em que não é possível, como valor de atributo de uma única tupla, obter um
conjunto de valores, uma tupla de valores ou uma combinação entre ambos.

Certa. Os atributos não podem ser multivalorados.

68ª Questão) (FCC – TCE/RS – Auditor Público Externo –


Processamento de Dados - 2014) Considerando o conceito de normalização
existente em bancos de dados relacionais, uma relação R está na segunda forma
normal se, além de estar na primeira forma normal,

Prof. Victor Dalton


www.estrategiaconcursos.com.br 106 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

(A) todos atributos que não fizerem parte da chave primária dessa relação
forem do tipo literal, com um comprimento máximo de 20 caracteres.
(B) não houver atributos do tipo numérico na chave primária dessa relação,
mas apenas atributos do tipo derivado.
(C) todos atributos que não fizerem parte da chave primária dessa relação
forem completamente dependentes de sua chave primária, ou seja, dependente
de toda a chave e não apenas de parte dela.
(D) houver um número mínimo de 3 atributos nessa relação, sendo que todos
esses atributos devem ser do tipo composto.
(E) os atributos de R estiverem restritos a uma lista predefinida de valores,
sendo essa lista composta por um número máximo de valores.

Para estar na segunda forma normal, uma tabela, além de estar na 1FN,
precisa que todos os seus atributos não-chave forem dependam funcionalmente
da chave inteira. Ou seja, não podem existir atributos que dependam apenas de
parte da chave, caso exista mais de um atributo compondo a chave primária.

Resposta certa, alternativa c).

69ª Questão) (FCC – CNMP – Analista – Desenvolvimento de Sistemas


– 2015) Considere a tabela funcionario a seguir, cuja chave primária é FuncCPF,
em um banco de dados relacional.

A manipulação de dados nesta tabela pode levar a problemas conhecidos


como anomalias. Sobre elas, considere:

I. Para incluir uma nova tupla na tabela será necessário incluir ou os valores
de atributo do departamento para o qual o funcionário trabalha ou valores NULL,
se o funcionário ainda não trabalha para nenhum departamento. Este é um
exemplo de anomalia de inserção.
II. A única maneira de inserir um novo departamento que ainda não tenha
funcionários é colocar valores NULL nos atributos para funcionário, já que este
procedimento não viola a integridade de entidade. Este é um exemplo de anomalia
de inserção.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 107 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
III. Se o funcionário Antônio for excluído e este for o último funcionário
trabalhando no departamento RH, a informação referente a este departamento se
perde do banco de dados. Este é um exemplo de anomalia de exclusão.
IV. Se o valor de um dos atributos de determinado departamento for mudado
(do departamento 5, por exemplo) será necessário atualizar as tuplas de todos os
funcionários que trabalham neste departamento, caso contrário, o banco de dados
ficará incoerente. Este é um exemplo de anomalia de modificação.

Está correto o que se afirma APENAS em

(A) I, II e IV.
(B) I, III e IV.
(C) III e IV.
(D) I, II e III.
(E) II e IV.

A tabela da questão viola as boas práticas de normalização de tabelas, ao


inserir a entidade Departamento dentro da entidade Funcionário. Isso produz o
risco de anomalias. As anomalias são fruto de informações redundantes que
comprometem espaço em disco e performance do banco de dados.

Revisando os três tipos de anomalias:

Anomalia de inserção – quando a inserção de uma informação está, de


certa forma, “amarrado” a outra informação. Quando, por exemplo, não se pode
inserir um empegado sem ter um projeto associado, e não se pode inserir um
projeto sem ter um empregado associado.

Anomalia de remoção – quando se remove um projeto, todos os


empregados associados são removidos. Por outro lado, quando o último
empregado de um projeto é removido, o projeto também é removido.

Anomalia de atualização – atualizar os dados de um projeto faz com que


todos os empregados que pertençam ao projeto precisem ser atualizados.

Na questão acima, analisando os itens:

I. Sentença correta. A inserção de um novo empregado obriga a inserção de


informações sobre departamento, ou NULL caso ele ainda não pertença a nenhum.

II. Sentença errada. Como FuncCPF é chave primária, não é possível inserir
um novo departamento sem inserir um funcionário.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 108 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
III. Sentença correta. Excluir o único funcionário do Departamento 1 elimina
informações sobre o departamento.

IV. Sentença correta. A atualização dos dados de um departamento com mais


de um funcionário exigirá a atualização de múltiplos registros, com risco de erros.

Resposta certa, alternativa b).

70ª Questão) (FCC – TRT/15ª Região – Técnico Judiciário – Tecnologia


da Informação – 2015) O modelo E-R utiliza alguns conceitos básicos como
entidades, atributos e relacionamentos. Os atributos podem ser classificados em
obrigatórios, opcionais, monovalorados, multivalorados, simples ou compostos.
Nesse contexto, uma entidade chamada Empregado possui os atributos ID, Nome,
TelefonesContato, CNH e Endereço. Os atributos TelefonesContato e Endereço
são classificados, respectivamente, em

(A) simples e multivalorado.


(B) multivalorado e composto.
(C) obrigatório e opcional.
(D) composto e multivalorado.
(E) monovalorado e multivalorado.

A questão quer que você conclua os tipos de atributos com base em sua
autodescrição.

Desta forma, concluímos que TelefonesContato é um atributo


multivalorado, pois permitirá a colocação de vários telefones.
Endereço, por sua vez (e por eliminação), será um atributo composto, pois
colocará Rua, Número, Bairro e Cidade, por exemplo, em um único campo.
Resposta certa, alternativa b).

71ª Questão) (FCC – TRT/15ª Região – Técnico Judiciário – Tecnologia


da Informação – 2015) Para representar o relacionamento entre entidades no
modelo E-R, várias notações foram criadas, como a da Engenharia da Informação,
criada por James Martin. Com relação a esta notação, considere o relacionamento
abaixo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 109 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Neste relacionamento,

(A) todo departamento cadastrado deverá ter, obrigatoriamente, pelo


menos, um empregado.
(B) um mesmo empregado pode estar associado a muitos departamentos.
(C) somente dois departamentos poderão ser cadastrados.
(D) somente três empregados poderão ser relacionados a cada
departamento.
(E) podem haver departamentos cadastrados sem nenhum empregado
relacionado a ele.

Compreendendo a notação, vemos que o relacionamento entre


Departamento e Empregado é (1-1) no lado Departamento e (0-n) do lado
Empregado.

Realizando a leitura apropriada, isto quer dizer que Departamento pode


possuir de zero a n empregados, e Empregado deve trabalhar em um e somente
um Departamento.

Por eliminação, a única alternativa correta é a alternativa e).

72ª Questão) (FCC – TRT/3ª Região – Analista Judiciário – Tecnologia


da Informação – 2015) Participando do projeto de modelagem de um banco de
dados utilizando o MER, um analista de TI identificou na modelagem lógica duas
entidades ligadas entre si em um relacionamento muitos-para-muitos (n:m): a
entidade Processo e a entidade Advogado, cujos atributos são apresentados
abaixo.

Processo (NumeroProcesso, Ano, NumeroVara,


NumeroTribunalOrigem)

Advogado (NumeroOABAdvogado, Nome, Telefone)

Cada advogado pode estar relacionado a vários processos diferentes, ora


com status de advogado de acusação, ora com status de advogado de defesa, e
cada processo, pode ter vários advogados de acusação e/ou de defesa. Nestas
condições, para criar as tabelas no banco de dados real este relacionamento n:m
terá que ser desmembrado em dois relacionamentos 1:n com uma tabela de
ligação contendo os campos

Prof. Victor Dalton


www.estrategiaconcursos.com.br 110 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
(A) CodigoLigacao, StatusAdvogadoProcesso, Data, com chave
primária composta pelo campo CodigoLigacao.

(B) NumeroProcesso, NumeroOABAdvogado e


StatusAdvogadoProcesso, com chave primária composta pelos campos
NumeroProcesso e NumeroOABAdvogado.

(C) NumeroProcesso e NumeroOABAdvogado, apenas, com ambos os


campos sendo chave primária e estrangeira ao mesmo tempo.

(D) CodigoLigacao, NumeroProcesso, NumeroOABAdvogado e


StatusAdvogadoProcesso, com chave primária composta pelo campo
CodigoLigacao e chave estrangeira formada pelos campos NumeroProcesso
e NumeroOABAdvogado.

(E) NumeroProcesso, NumeroOABAdvogado e


StatusAdvogadoProcesso, com chave primária composta pelos
campos NumeroProcesso e NumeroOABAdvogado e chave estrangeira
formada pelo campo StatusAdvogadoProcesso.

Este exercício é mentalmente trabalhoso, pois envolve a sua capacidade de


entender o Modelo E-R e saber trazer esse entendimento para o modelo relacional,
e criar tabelas que atendam corretamente ao que se pede. Por outro lado, premia
aquele que realmente entende os modelos E-R e relacional.

Ao estar diante de um relacionamento N:M, já vislumbramos que teremos


que criar duas tabelas com as entidades, Processo e Advogado, e uma tabela de
ligação, que materializará o relacionamento N:M. Mas isso já é falado no próprio
enunciado, facilitando a nossa vida.
As tabelas de ligação possuem como chave primária a junção das chaves
estrangeiras, que remetem às respectivas entidades. Portanto, podemos esperar
uma tabela com NumeroProcesso e NumeroOABAdvogado, sendo chaves
estrangeiras nesta tabela de ligação, e compondo a chave primária. Entendendo
este fundamento, já podemos descartas as alternativas a), d) e e).

Por fim, é necessário atender ao enunciado. Se o advogado, em um processo,


pode ser de defesa ou acusação, a alternativa b) propõe uma solução
interessante, criando o atributo StatusAdvogadoProcesso, para que essa
informação possa ser adicionada. Tal atributo não é chave nem nada demais,
apenas armazena a informação necessária para a implementação do banco.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 111 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
CONSIDERAÇÕES FINAIS

E conseguimos encerrar a aula! Alguém desmaiou? Todo mundo aí?

Eu, particularmente, gosto muito de BD. Por isso, procurei escrever


muita coisa pra vocês nos mínimos detalhes, tentando aliviar a dificuldade
que eu imagino que vocês terão com esse assunto. Sei que vocês não estão
aqui para se formarem em Bancos de Dados, e sim para acertar questões
sobre o assunto na prova.

Meu foco é a aprovação de vocês, e nada mais. Quero facilitar ao


máximo a digestão desse conteúdo.

Faça um esforço, vale a pena esse sacrifício. Se tudo der certo, será a
última vez que você estuda esses assuntos. 

Bons estudos!

Victor Dalton

Prof. Victor Dalton


www.estrategiaconcursos.com.br 112 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
LISTA DE EXERCÍCIOS

1ª Questão) (ESAF – Superintendência de Seguros Privados –


Tecnologia da Informação - 2010) Um banco de dados é um
a) conjunto de objetos da realidade sobre os quais se deseja manter
informações.
b) conjunto de operações sobre dados integrados destinados a modelar
processos.
c) software que incorpora as funções de definição, recuperação e alteração
de dados.
d) software que modela funções de definição, recuperação e alteração de
dados e programas.
e) conjunto de dados integrados destinados a atender às necessidades de
uma comunidade de usuários.

2ª Questão) (ESAF – Analista de Finanças e controle – Fiscalização


Geral - 2012) O projeto geral do banco de dados é
a) o esquema do banco de dados.
b) o planejamento estratégico do fluxo de dados.
c) o esquema de dimensionamento físico-financeiro do banco de dados.
d) a versão inicial de instanciação dos dados a serem carregados no sistema.
e) o esquema de atualização dos dados para manutenção de consistência.

3ª Questão) (FCC – TCE/SP - Agente da Fiscalização Financeira -


Produção e Banco de Dados – 2010) No catálogo são mantidos
a) esquemas internos, conceituais e externos, mapeamentos e metadados.
b) apenas os esquemas internos e os metadados.
c) apenas o esquema conceitual e os metadados.
d) apenas os esquemas internos, externos e os metadados.
e) apenas o mapeamento conceitual.

4ª Questão) (FCC – TCE/AM – Analista Técnico de Controle Externo –


Tecnologia da Informação - 2012) O modelo conceitual de dados

a) é aquele em que os objetos, suas características e relacionamentos têm a


representação de acordo com as regras de implementação e limitantes impostos
por algum tipo de tecnologia.
b) é aquele em que os objetos, suas características e relacionamentos têm a
representação fiel ao ambiente observado, independente de limitações quaisquer
impostas por tecnologias, técnicas de implementação ou dispositivos físicos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 113 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
c) é aquele elaborado respeitando-se e implementando-se conceitos tais
como chaves de acesso, controle de chaves duplicadas, itens de repetição
(arrays), normalização, ponteiros e integridade referencial, entre outros.
d) é a fase da modelagem na qual é necessário considerar todas as
particularidades de implementação, principalmente o modelo que será utilizado
para a implementação futura.
e) está sempre associado às fases de projeto, contrastando com o modelo
lógico, que sempre está associado à fase de análise, quando utilizado com as
metodologias de desenvolvimento de sistemas e implementado por ferramentas
CASE.

5ª Questão) (FCC – ALESP - Agente Técnico Legislativo–


Administração de Banco de Dados – 2010) Um modelo de banco de dados é
uma descrição do tipo de informação que está ou será armazenada em um banco
de dados. O mesmo modelo de banco de dados pode ser descrito em diversos
níveis de abstração. Geralmente, utilizam-se os níveis
a) conceitual e prático.
b) escrito e lógico.
c) representativo e prático.
d) conceitual e lógico.
e) escrito e prático.

6ª Questão) (FCC – MPE/AM – Agente de Apoio – Programador - 2013)


Um sistema de banco de dados deve apresentar um projeto que visa a organização
das informações e utilização de técnicas para que o futuro sistema obtenha boa
performance e também facilite as manutenções que venham a acontecer.
O projeto de banco de dados se dá em, pelo menos, duas fases: Modelagem
conceitual e

a) Projeto lógico.
b) Teste de integração.
c) Instalação.
d) Definição da ferramenta que será adotada.
e) Teste de carga.

7ª Questão) (ESAF – CVM – Analista - Sistemas – 2010) Assinale a opção


correta.
a) Um banco de dados relacional é composto de roteamentos.
b) O projeto de um banco de dados é realizado segundo as fases Modelagem
Procedural, Projeto Lógico, Projeto Operacional.
c) O projeto de um banco de dados é realizado segundo as fases Modelagem
Conceitual, Projeto Lógico, Projeto Físico.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 114 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
d) O projeto de um banco de dados é realizado por meio das fases
Modelagem Lógica e Modelagem Física.
e) Um banco de dados relacional é composto de configurações.

8ª Questão) (ESAF – Analista de Finanças e Controle –


Desenvolvimento de Sistemas de Informação – 2008) Administrar um
banco de dados constitui-se basicamente em instalar, configurar, monitorar e
solucionar problemas em um SGBD (Sistema Gerenciador de Banco de Dados).
Assim, constituem-se responsabilidades de um Administrador de Banco de Dados
(DBA), exceto:
a) planejar o projeto físico do banco de dados.
b) realizar, testar e manter cópias de segurança dos dados periodicamente.
c) monitorar o desempenho do servidor de banco de dados e tomar as
providências necessárias para atender as demandas dos usuários e sistemas.
d) definir regras para a nomenclatura utilizada nas tabelas e nos esquemas
do banco de dados.
e) definir e verificar periodicamente a segurança e integridade do servidor
de banco de dados.

9ª Questão) (FCC – INFRAERO – Analista de Sistema – Banco de Dados


e Administrador de Dados - 2011) Quando uma transação A acessa o banco
de dados, o SGBD automaticamente bloqueia cada parte do banco que essa
transação altera ou requisita. Ao efetuar uma transação B em paralelo, o SGBD
também bloqueia partes do banco de dados que essa transação acessa. Tais
procedimentos se referem à característica de um SGBD denominada controle de

a) integridade.
b) concorrência.
c) restrição.
d) desempenho.
e) restauração.

10ª Questão) (FCC – ALESP – Agente Técnico Legislativo –


Administração de Banco de Dados – 2010) NÃO é uma vantagem do SGBD:
a) controle de redundância.
b) compartilhamento de dados.
c) restrição a acesso não autorizado.
d) tolerância a falhas.
e) custo.
11ª Questão) (FCC – TST – Analista Judiciário – Análise de Sistemas –
2012) Um Sistema de Gerenciamento de Bancos de Dados (SGBD)

Prof. Victor Dalton


www.estrategiaconcursos.com.br 115 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
a) é um ambiente de suporte ao desenvolvimento de projetos de banco de
dados relacionais, que gera um modelo de banco de dados para ser implementado
em um servidor.
b) prepara aplicações para que possam acessar um ou mais bancos de dados.
Na linguagem de programação Java, por exemplo, o JDBC (Java Data Base
Connectivity) é um SGBD capaz de acessar dados de diferentes bancos.
c) oferece um conjunto de ferramentas que possibilitam o gerenciamento de
diferentes arquivos do tipo texto ou do tipo binário, armazenados em bancos de
dados, limitados aos formatos UNICODE ou ASCII.
d) consiste em uma tecnologia de servidores que opera sobre o protocolo
HTTP para a troca de dados e informações através de arquivos que transportam
mensagens no formato HTML.
e) faz a gerência de uma ou mais bases de dados, permitindo o
armazenamento e consulta de dados e informações pelos usuários finais e
programas de aplicação.

12ª Questão) (FCC – TCE/SP - Agente da Fiscalização Financeira -


Produção e Banco de Dados – 2010) As três visões da arquitetura básica de
um SGBD, pela ordem, desde a mais próxima do usuário até a mais distante, são:
a) externa, conceitual e interna.
b) externa, interna e conceitual.
c) conceitual, interna e externa.
d) conceitual, externa e interna.
e) interna, conceitual e externa.

13ª Questão) (FCC – SEFAZ/SP - Agente Fiscal de Rendas – Tecnologia


da Informação – 2009) Considere:

I. O que se ocupa do modo como os dados são fisicamente armazenados.


II. O que se ocupa do modo como os dados são vistos por usuários
individuais.
III. Nível lógico de comunidade ou apenas lógico (mais abstrato que o físico
e diferente da visão do usuário individual).

Em um projeto arquitetural, os itens I, II e III são classificados,


respectivamente, como níveis
a) externo, conceitual e interno.
b) externo, interno e conceitual.
c) interno, externo e conceitual.
d) interno, conceitual e externo.
e) conceitual, externo e interno.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 116 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
14ª Questão) (FCC – MPE/AM – Agente de Apoio – Programador -
2013) O sistema de banco de dados deve garantir uma visão totalmente abstrata
do banco de dados para o usuário, ou seja, para o usuário do banco de dados
pouco importa qual a unidade de armazenamento está sendo usada para guardar
seus dados, contanto que os mesmos estejam disponíveis no momento
necessário.

Esta abstração se dá em três níveis:

I. Nível de visão do usuário: as partes do banco de dados que o usuário


tem acesso de acordo com a necessidade individual de cada usuário ou grupo de
usuários.
II. Nível conceitual.
III. Nível físico: é o nível mais baixo de abstração, em que define
efetivamente de que maneira os dados estão armazenados.

O Nível conceitual:

a) garante a integridade dos dados por aplicação de criptografia e o controle


de blocos de acesso.
b) especifica a maneira como os dados devem ser transferidos para a
memória.
c) determina o tipo de segurança que será utilizado no acesso aos dados.
d) apresenta o conceito de acesso (simétrico ou assimétrico) e as chaves que
serão utilizadas.
e) define quais os dados que estão armazenados e qual o relacionamento
entre eles.

15ª Questão) (FCC – MPE/SE – Analista – Gestão e Análise de Projeto


de Sistema - 2013) Em projetos de Banco de Dados, o objetivo da arquitetura
de três-esquemas é separar o usuário da aplicação do banco de dados físico. Nessa
arquitetura, os esquemas podem ser definidos por três níveis:

I. O nível interno tem um esquema que descreve a estrutura de


armazenamento físico do banco de dados. Esse esquema utiliza um modelo de
dado físico e descreve os detalhes complexos do armazenamento de dados e
caminhos de acesso ao banco;
II. O nível conceitual possui um esquema que descreve a estrutura de todo
o banco de dados para a comunidade de usuários. O esquema conceitual oculta
os detalhes das estruturas de armazenamento físico e se concentra na descrição
de entidades, tipos de dados, conexões, operações de usuários e restrições.
Geralmente, um modelo de dados representacional é usado para descrever o
esquema conceitual quando o sistema de banco de dados for implementado. Esse

Prof. Victor Dalton


www.estrategiaconcursos.com.br 117 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
esquema de implementação conceitual é normalmente baseado em um projeto de
esquema conceitual em um modelo de dados de alto nível;
III. O nível interno ainda abrange os esquemas externos ou visões de
usuários. Cada esquema interno descreve a parte do banco de dados que um dado
grupo de usuários tem interesse e oculta o restante do banco de dados desse
grupo. Como no item anterior, cada esquema é tipicamente implementado
usando-se um modelo de dados representacional, possivelmente baseado em um
projeto de esquema externo em um modelo de dados de alto nível.

Está correto o que se afirma em

a) II, apenas.
b) II e III, apenas.
c) I, II e III.
d) I e II, apenas.
e) III, apenas.

16ª Questão) (FCC – SEFAZ/SP - Agente Fiscal de Rendas – Tecnologia


da Informação – 2009) A independência de dados física e a independência de
dados lógica são possibilitadas de forma ideal, respectivamente, por um
a) ou mais mapeamentos conceituais/internos e por um ou mais
mapeamentos internos/externos.
b) mapeamento conceitual/interno e por um ou mais mapeamentos
externos/conceituais.
c) mapeamento interno/externo e por um mapeamento conceitual/interno.
d) ou mais mapeamentos internos/externos e por um mapeamento
conceitual/interno.
e) mapeamento conceitual/externo e por um mais mapeamentos
conceituais/internos.

17ª Questão) (Cesgranrio – Petrobrás – Analista de Sistemas Júnior –


Engenharia de Software – 2010) A independência de dados lógica, definição
componente da arquitetura de três esquemas para sistemas de banco de dados,
corresponde à capacidade de se efetuarem
a) mudanças no nível conceitual, sem a necessidade de modificações no nível
externo e em programas aplicativos.
b) mudanças no nível interno, sem a necessidade de modificações nos níveis
conceitual e externo.
c) mudanças no nível externo, sem a necessidade de modificações nos níveis
interno e conceitual.
d) consultas em SQL sobre um banco de dados relacional, independente da
estruturação física dos dados armazenados.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 118 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
e) consultas em SQL sobre um banco de dados relacional, independente da
lógica de programação usada em programas aplicativos.

18ª Questão) (FCC – MPE/SE – Analista – Gestão e Análise de Projeto


de Sistema - 2013) A capacidade de alterar o esquema conceitual sem mudar o
esquema externo ou os programas, podendo modificar o esquema conceitual para
expandir o banco de dados (adicionando um tipo de registro ou item de dados),
variar as restrições ou reduzir o banco de dados (removendo um tipo de registro
ou item de dados) é chamada de

a) modularidade.
b) modelo conceitual.
c) independência lógica de dados.
d) polimorfismo.
e) agregação.

19ª Questão) (FCC – TRE/SP – Analista Judiciário – Análise de


Sistemas - 2012) É o modelo de dados que eliminou o conceito de hierarquia,
permitindo que um mesmo registro estivesse envolvido em várias associações. Os
registros, organizados em grafos, permitem o tipo de associação que define uma
relação 1:N entre os tipos de registros proprietário e membro. Assim, para dois
relacionamentos 1:N entre os registros A e D e entre os registros C e D é possível
construir um relacionamento M:N entre A e D. Trata-se do modelo

a) em rede.
b) relacional.
c) hierárquico.
d) orientado a objetos.
e) distribuído.

20ª Questão) (ESAF – MPOG – Analista de Planejamento e Orçamento


– Tecnologia da Informação – 2009) No modelo entidade-relacionamento, a
cardinalidade de mapeamento expressa
a) o número de entidades ao qual um relacionamento pode estar associado
a um outro relacionamento.
b) o número de relacionamentos ao qual outro relacionamento pode estar
associado via uma entidade.
c) o critério de classificação segundo o qual os relacionamentos associam
entidades.
d) o número de entidades ao qual outra entidade pode estar associada via
um relacionamento.
e) o posicionamento de uma entidade dentro do mapeamento do modelo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 119 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

21ª Questão) (UEL – Sercomtel – Informática III – 2005) Para um


conjunto de relacionamentos binários a cardinalidade NÃO pode ser:
a)Um para um (1:1): uma entidade E1 pode estar associada no máximo a
uma entidade E2 através de R; e uma entidade de E2 pode estar associada a no
máximo uma entidade E1, através de R.
b)Um para muitos (1:N): uma entidade E1 pode estar associada a várias
entidades E2; e uma entidade de E2 pode estar associada a no máximo uma
entidade E1.
c)Muitos para um (N:1): uma entidade E1 pode estar associada no máximo
a uma entidade E2; e uma entidade de E2 pode estar associada a várias entidades
de E1.
d)Muitos para muitos (N:N): uma entidade E1 pode estar associada a várias
entidade E2; e uma entidade de E2 pode estar associada a várias entidades de
E1.
e)Um para muitos (1:N): uma entidade E1 pode estar associada a várias
entidade E2 ou nenhuma; e uma entidade de E2 pode estar associada a nenhuma
ou muitas entidades de E1.
Conhecida a cardinalidade, você já resolve a questão. As quatro primeiras
alternativas exemplificam bem as várias cardinalidades.

22ª Questão) (FCC – Prefeitura de SP – Auditor Fiscal Tributário


Municipal I – Tecnologia da Informação - 2012) Considere o seguinte
diagrama ER parcial de um banco de dados.

De acordo com a cardinalidade das associações, um


a) projeto emprega pelo menos um empregado e é controlado por
exatamente um departamento.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 120 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
b) empregado trabalha em pelo menos um projeto e gerencia exatamente
um departamento.
c) empregado trabalha em zero ou mais projetos e gerencia exatamente um
departamento.
d) departamento é gerenciado por exatamente um empregado e controla
pelo menos um projeto.
e) departamento é gerenciado por exatamente um empregado e controla
zero ou mais projetos.

23ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) Quando do projeto de um banco de dados relacional, pode haver a
indicação de que um conjunto de entidades tem participação total em um conjunto
de relacionamentos, isto significa que
a) cada entidade do conjunto de entidades participa em todos os
relacionamentos do conjunto de relacionamentos.
b) há, no mínimo, metade das entidades do conjunto de entidades que
participam em pelo menos um relacionamento do conjunto de relacionamentos.
c) as entidades do conjunto de entidades não possuem atributos do tipo
booleano ou do tipo data.
d) cada entidade do conjunto de entidades participa em pelo menos um
relacionamento do conjunto de relacionamentos.
e) todos os atributos do conjunto de entidades são indexados com a técnica
de árvores binárias.

24ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) Considere o seguinte diagrama Entidade-Relacionamento, resultante da
modelagem de um banco de dados relacional:

A partir desse diagrama, pode-se afirmar que

a) uma loja não possui todos os produtos.


b) uma loja possui um número par de departamentos.
c) cada departamento pode possuir vários produtos.
d) um mesmo produto não pode estar em mais de uma loja.
e) o número de lojas é impar.

25ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) A técnica de diagramação no modelo de Entidade-Relacionamento é bem

Prof. Victor Dalton


www.estrategiaconcursos.com.br 121 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
simples. Utiliza basicamente um losango para representar ...I... e um retângulo
para representar ...II... .

As lacunas I e II são preenchidas, correta e respectivamente, por

a) relacionamentos – entidades
b) atributos − relacionamentos
c) entidades − relacionamentos
d) entidades − atributos
e) atributos − entidades

26ª Questão) (FCC – TRT/6ª Região – Analista Judiciário – Tecnologia


da Informação - 2012) Um banco de dados relacional é um banco de dados
projetado segundo o chamado modelo relacional, que é um modelo de banco de
dados baseado na lógica de predicados de primeira ordem. O objetivo do modelo
é o de proporcionar uma linguagem declarativa para a descrição tanto dos dados
como de consultas a seu respeito, de maneira que o usuário declara tanto a
informação contida no banco de dados como a informação que dele deseja extrair,
deixando a cargo do sistema gerenciador do banco de dados a tarefa de
estabelecer estruturas de armazenamento de dados bem como os procedimentos
de recuperação destes dados para responder consultas. O modelo relacional foi
proposto formalmente há mais de 40 anos.

O texto acima está

a) incorreto, porque o modelo relacional é baseado na lógica de predicados


de segunda ordem.
b) correto.
c) incorreto, porque o modelo relacional não conduz naturalmente a uma
linguagem declarativa de descrição de dados ou consultas.
d) incorreto, porque nos bancos de dados relacionais, a tarefa de descrever
os procedimentos de recuperação dos dados para a resposta a consultas é tarefa
do usuário.
e) incorreto, porque o modelo relacional foi proposto há menos de 30 anos.

27ª Questão) (ESAF – SUSEP – Analista Técnico – Tecnologia da


Informação - 2010) Em Sistemas Gerenciadores de Bancos de Dados (SGBD),
existem as seguintes categorias de restrições de integridade:
a) Integridade de domínio, Integridade de vazio, Integridade de chave,
Integridade referencial.
b) Integridade de acesso, Integridade de entrada, Integridade de saída,
Integridade referencial.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 122 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
c) Integridade de domínio, Integridade de completude, Integridade de chave,
Integridade posicional.
d) Integridade de cardinalidade, Integridade de vazio, Integridade de
autorização de acesso, Integridade associativa.
e) Integridade de generalização/especialização, Integridade de usuários,
Integridade de chave, Integridade referencial.

28ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


- 2013) No projeto de bancos de dados relacionais é usual a tarefa de permitir
ou restringir a presença de valores nulos para determinados atributos. O
significado de um valor nulo é
a) o valor zero.
b) um valor especial designado pelo código ASCII da tecla #.
c) o valor correspondente à tecla F12.
d) a ausência de valor.
e) um valor fora do domínio do atributo.

29ª Questão) (FCC – ALESP – Agente Técnico Legislativo –


Administração de Banco de Dados – 2010) NÃO é uma restrição de
integridade básica:
a) de vazio.
b) de domínio.
c) de entidade.
d) de chave.
e) referencial.

30ª Questão) (FCC – TRT/1ª Região – Analista Judiciário – Tecnologia


da Informação – 2014) No modelo entidade-relacionamento utilizado para
modelar Bancos de Dados relacionais, quando se indica que há um conjunto de
relacionamentos do tipo muitos para muitos entre 2 conjuntos de entidades A e
B, significa que

(A) uma entidade do conjunto A está sempre associada a mais de uma


entidade de conjunto B e vice-versa.
(B) uma entidade do conjunto A pode estar associada a várias entidades do
conjunto B e vice-versa.
(C) os conjuntos de entidades A e B possuem, cada um deles, número igual
de atributos.
(D) os conjuntos de entidades A e B possuem diversos atributos com a
possibilidade de terem valores nulos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 123 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
(E) uma entidade do conjunto B está associada a apenas uma entidade do
conjunto A, mas uma entidade do conjunto A está associada a várias entidades
do conjunto B.

31ª Questão) (ESAF – Superintendência de Seguros Privados –


Tecnologia da Informação - 2010) Um modelo de banco de dados relacional
deve conter no mínimo a definição de
a) tabelas, colunas das tabelas e restrições de integridade.
b) títulos, colunas dos atributos e restrições de integridade.
c) títulos, colunas das tabelas e restrições de manutenção.
d) tabelas, relações entre linhas das tabelas e opções de integridade.
e) associações de restrição, colunas referenciadas e restrições de
desempenho.

32ª Questão) (FCC – TCE/AM – Analista Técnico de Controle Externo –


Tecnologia da Informação - 2012) Em relação a bancos de dados, uma chave
primária pode ser formada por uma ou mais colunas e deve possuir um
identificador único para
a) cada uma das colunas pertencente a essa chave.
b) cada coluna da tabela.
c) uma tupla (formada por linhas e colunas).
d) todos os registros da tabela.
e) cada linha da tabela.

33ª Questão) (ESAF – Superintendência de Seguros Privados –


Tecnologia da Informação – 2010) Em Abordagem Relacional
a) uma chave relacionada é uma coluna cujos valores distinguem atributos
de relacionamentos.
b) a chave estrangeira é o mecanismo que permite a implementação de
relacionamentos em um banco de dados relacional.
c) a chave estrangeira é uma coluna ou uma combinação de colunas cujos
valores não aparecem na chave primária de uma tabela.
d) uma chave primária é uma linha ou uma combinação de linhas cujos
valores distinguem uma coluna das demais dentro de uma tabela.
e) a chave estrangeira é uma linha ou uma combinação de linhas cujos
valores necessariamente aparecem na chave primária de uma tabela.

34ª Questão) (FCC – TRT/6ª Região – Analista Judiciário – Tecnologia


da Informação - 2012) No modelo entidade-relacionamento,
a) entidades podem ter atributos, mas relacionamentos não podem ter
atributos.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 124 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
b) uma chave é um conjunto de atributos cujos valores identificam um
relacionamento de maneira única.
c) um relacionamento é uma associação entre atributos.
d) todo relacionamento tem uma chave.
e) uma chave é um conjunto de atributos cujos valores identificam uma
entidade de maneira única.

35ª Questão) (FCC – TJ/RJ – Analista Judiciário – Analista de Suporte


– 2012) Considere:
I. Se uma transação é concluída com sucesso (operação commit bem
sucedida), então seus efeitos são persistentes.
II. Ou todas as ações da transação acontecem, ou nenhuma delas acontece.
As propriedades (I) e (II) das transações em SGBDs, significam,
respectivamente,
a) durabilidade e consistência.
b) persistência e automação.
c) isolação e atomicidade.
d) durabilidade e atomicidade.
e) consistência e persistência.

36ª Questão) (FCC – MPE/MA – Analista Ministerial – Banco de Dados


– 2013) O conceito de transações em um banco de dados relacional envolve
algumas propriedades conhecidas e agrupadas sob o acrônimo ACID. A letra D
nesse acrônimo significa Durabilidade, sendo que seu conceito indica que
a) todas as regras de consistência previamente programadas no banco de
dados serão automaticamente excluídas.
b) cada transação é independente das demais, não gerando influência nas
demais transações eventualmente existentes.
c) os tipos de dados definidos não dependem do sistema gerenciador de
banco de dados utilizado.
d) ao término de uma transação, eventuais alterações em valores das tabelas
do banco de dados devem persistir, mesmo que ocorram falhas no sistema de
banco de dados.
e) é necessário utilizar um sistema gerenciador de banco de dados capaz de
implementar mecanismos de controle de concorrência.

37ª Questão) (UEL – SEAP – Analista de Sistemas – 2009) Os sistemas


gerenciadores de bancos de dados devem garantir que as transações por eles
suportadas possuam o conjunto das seguintes propriedades:

a) Atomicidade, consistência, isolamento, durabilidade.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 125 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
b) Atomicidade, consistência, independência de dados, durabilidade.
c) Atomicidade, consistência, independência de dados, isolamento.
d) Atomicidade, consistência, isolamento, replicação.
e) Atomicidade, consistência, durabilidade, robustez.

38ª Questão) (FCC – SEFAZ/SP – Agente Fiscal de Rendas – 2013) Para


responder às próximas questões, 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.

39ª Questão) (FCC – DPE/SP – Agente de Defensoria Pública –


Analista de Sistemas - 2013) Quando da modelagem de dados de um banco
de dados relacional, podem ser utilizados atributos compostos, sobre os quais é
correto afirmar que
a) podem ser decompostos em outros atributos simples ou ainda compostos.
b) são sempre formados por um atributo do tipo numérico e um do tipo
literal.
c) não podem conter atributos do tipo booleano em sua formação.
d) não admitem valores nulos em sua composição.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 126 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
e) fazem parte, obrigatoriamente, da chave primária do conjunto de
entidades ao qual são vinculados.

40ª Questão) (FCC – SEFAZ/SP – Agente Fiscal de Rendas – 2013) 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.

41ª Questão) (FCC – Prefeitura de SP – Auditor Fiscal Tributário


Municipal I – 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.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 127 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

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.

42ª Questão) (FCC – MPE/CE – Analista Ministerial – Ciências da


Computação - 2013) O modelo de dados relacional é baseado em uma coleção
de ...I... . O usuário pode consultá-las e inserir, excluir e atualizar ...II... . A ...III...
define um conjunto de operações sobre relações e as linguagens de consulta são
baseadas nela. O modelo de dados ...IV... é amplamente usado para o projeto do
banco de dados, oferecendo uma representação gráfica para visualizar dados,
relacionamentos e ...V....

Preenchem as lacunas, correta e respectivamente, o que consta em

43ª Questão) (FCC – ALESP – Agente Técnico Legislativo –


Administração de Banco de Dados e Arquitetura de Dados - 2010) Maneira
alternativa de observação de dados de uma ou mais entidades − tabelas −, que
compõe uma base de dados. Pode ser considerada como uma tabela virtual ou
uma consulta armazenada. Trata-se de

a) table shadow.
b) view.
c) shadow table.
d) table blour.
e) blour table.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 128 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
44ª Questão) (FCC – BACEN – Analista – Área 2 – 2005 - adaptada)
Sobre definição e manipulação de visão, analise:

I. Uma VIEW provê mais segurança, pois permite esconder parte dos dados
da tabela real.
II. Os dados que compõem a VIEW são armazenados separadamente da
tabela real.
III. Uma linha inserida na VIEW, com todas as colunas, será inserida na
tabela real.

É correto o que consta APENAS em

a) I,II e III.
b) I e II, somente.
c) I e III, somente.
d) II e III, somente.
e) I, somente.

45ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012) Na


modelagem Entidade-Relacionamento (ER) uma propriedade importante de um
relacionamento é a de quantas ocorrências de uma entidade podem estar
associadas a uma determinada ocorrência através do relacionamento. Tal
propriedade é chamada de

a) dependência funcional

b) normalização

c) generalização/especialização

d) relacionamento identificador

e) cardinalidade.

46ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012) A


definição “software que incorpora as funções de definição, recuperação e alteração
de dados em um banco de dados”, melhor corresponde a:

a) Modelo de banco de dados.

b) Linguagem de Consulta Estruturada (SQL).

c) Sistema de Gerência de Banco de Dados (SGDB).

d) Interpretador eXtended Markup Language (XML).

Prof. Victor Dalton


www.estrategiaconcursos.com.br 129 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
e) Sistemas de arquivos.

47ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012)


Como se denomina o modelo de dados abstrato que descreve a estrutura de um
banco de dados de forma independente de um SGDB particular?

a) Modelo físico.

b) Modelo de dados.

c) Modelo virtual.

d) Modelo conceitual.

e) Modelo lógico.

48ª Questão) (FMP – ISS/POA – Agente Fiscal da Receita – 2012) A


técnica de modelagem de dados mais difundida é a abordagem entidade-
relacionamento. À luz dessa modelagem, o que se entende por relacionamento?

a) O conjunto de associações entre as entidades que serão armazenadas no


banco de dados.

b) As informações de uma determinada entidade do banco de dados.

c) Um par específico de entidades.

d) A definição dos possíveis valores que uma determinada entidade pode


assumir.

e) Um identificador que distingue de forma unívoca a ocorrência de uma


entidade das demais ocorrências dessa mesma entidade.

49ª Questão) (CETRO –SEMSA – Analista de Sistemas – 2012) Assinale


a alternativa que apresenta a representação adequada para uma entidade forte
no modelo E-R.

a) Losango.

b) Retângulo de borda dupla.

c) Pequeno retângulo de cantos arredondados.

d) Losango de borda dupla.

e) Retângulo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 130 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
50ª Questão) (CETRO – ANVISA – Analista Administrativo Área 5 –
2013) Com relação às chaves substitutas em banco de dados, analise as
assertivas abaixo.

I. Sempre envolvem exatamente um atributo.

II. Elas servem somente para representar o fato de que entidades


correspondentes existem.

III. Quando uma entidade é excluída, o valor de sua chave substituta deverá
ser alocado para a primeira nova entidade adicionada.

É correto o que se afirma em

a) I e III, apenas.

b) I e II, apenas.

c) II e III, apenas.

d) I, II e III.

e) II, apenas.

51ª Questão) (CETRO – ANVISA – Analista Administrativo Área 5 –


2013) Quanto aos sistemas de gerenciamento de banco de dados, assinale a
alternativa correta.

a) Sua função geral é fornecer uma interface entre o usuário e o sistema de


banco de dados.

b) Sempre tem um gerenciador de transações.

c) O dicionário de dados impõe certos controles sobre a recuperação e


concorrência do banco de dados.

d) A verificação da integridade dos dados deve ser feita somente no tempo


de compilação.

e) Não incluem compiladores de DML.

52ª Questão) (FCC – TRT 2ª Região – Analista Judiciário – Tecnologia


da Informação – 2014) Em alguns casos, dois ou mais valores de atributos em
um modelo de Entidade-Relacionamento estão relacionados. Por exemplo, os
atributos Idade e Data de Nascimento de uma pessoa. Para uma Entidade-Pessoa
em particular, o valor de Idade pode ser determinado pela data corrente e o valor
de Data de Nascimento da pessoa. Portanto, o atributo Idade é chamado atributo

Prof. Victor Dalton


www.estrategiaconcursos.com.br 131 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
...I... do atributo Data de Nascimento, que, por sua vez, é chamado atributo ...II...
.

As lacunas I e II são, correta e respectivamente, preenchidas com:

(A) armazenado - derivado


(B) derivado - armazenado
(C) multivalorado - monovalorado
(D) identificador - complexo
(E) resultante - unívoco

53ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Um SGBD


multiusuário deve permitir que diversos usuários acessem o banco de dados ao
mesmo tempo. Isso é essencial se os dados para as várias aplicações estão
integrados e mantidos em um único banco de dados. O SGBD deve incluir um
software de controle de concorrência para garantir que muitos usuários, ao tentar
atualizar o mesmo dado, o façam de um modo controlado, para assegurar que os
resultados das atualizações sejam corretos. Por exemplo, quando muitos
atendentes tentam reservar um lugar em um voo, o SGBD deve garantir que cada
assento possa ser acessado somente por um atendente de cada vez, para fazer a
reserva de apenas um passageiro.

Em SGBD, a este conceito se dá o nome de

a) acesso simultâneo.
b) semáforo de acesso.
c) transação.
d) modularização.
e) polimorfismo.

54ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Um SGBD


possui a capacidade de mudar o esquema interno sem ter de alterar o esquema
conceitual, consequentemente não havendo necessidade de alteração do esquema
externo. As mudanças no esquema interno podem ser necessárias para que alguns
arquivos físicos possam ser reorganizados, por exemplo, pela criação de
estruturas de acesso adicionais para aperfeiçoar o desempenho da recuperação
ou atualização de dados.

Essa característica de um SGBD é denominada

a) modelo lógico de dados.

b) modelo físico de dados.

c) independência modular.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 132 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
d) representação conceitual.

e) independência física de dados.

55ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Uma


característica fundamental da abordagem de um banco de dados é que o sistema
de banco de dados possui não apenas o banco de dados, mas também uma
completa definição ou descrição ...I... desse banco de dados e ...II.... Essa
definição está armazenada no catálogo do SGBD, que contém informações como
a estrutura de cada arquivo, o tipo e o formato de armazenamento de cada item
de dado e várias restrições sobre os dados.

As lacunas I e II são correta e, respectivamente, preenchidas por:

a) do domínio - seus casos de uso

b) do conteúdo binário - suas linhas e colunas

c) das tabelas - seus administradores

d) da estrutura - suas restrições

e) em UML - outros bancos deste sistema

56ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) No


processamento tradicional de arquivos, a estrutura do arquivo de dados está
embutida no programa da aplicação, sendo assim, qualquer mudança na estrutura
de um arquivo pode exigir alterações de todos os programas que acessam esse
arquivo. Aplicações desenvolvidas com foco em SGBD não exigem essas
alterações na maioria dos casos, pois a estrutura dos arquivos de dados é
armazenada no catálogo do SGDB separadamente do programa de acesso.

A este isolamento entre programas e dados é dado o nome de

a) abstração de dados.

b) acesso remoto.

c) independência funcional.

d) independência modular.

e) modelo relacional.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 133 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

57ª Questão) (FCC – SABESP – Tecnólogo - Sistemas - 2014) A maioria


das aplicações de um banco de dados tem certas restrições de integridade que
devem complementar os dados. O SGBD deve prover funcionalidades para a
definição e a garantia dessas restrições. O tipo mais simples de restrição de
integridade envolve a

a) especificação de um tipo de dado para cada item de dados.

b) indexação da tabela por valores ascendentes ou descendentes, conforme


a restrição a ser integrada.

c) criação de visualizações (views) para as colunas de uma tabela.

d) definição do modelo lógico de dados juntamente com as características


físicas do domínio.

e) utilização de chaves estrangeiras em conjunto com a definição de um


gatilho (trigger) para determinados eventos.

58ª Questão) (FCC – SEFAZ/PE – Auditor Fiscal – 2014) Um Sistema de


Gerenciamento de Banco de Dados (SGBD) é um software com recursos
específicos para facilitar a manipulação das informações dos bancos de dados e o
desenvolvimento de programas aplicativos. A forma como os dados serão
armazenados no banco de dados é definida pelo modelo do SGBD. Os principais
modelos são: hierárquico, em rede, orientado a objetos e

(A) funcional.
(B) procedural.
(C) orientado a serviços.
(D) relacional.
(E) orientado a componentes.

59ª Questão) (FCC – TCE/RS – Auditor Público Externo – Técnico em


Procesamento de Dados – 2014) Considerando a modelagem de dados de um
banco de dados relacional, há diversos conceitos envolvendo conjuntos de
entidades. Um conceito correto sobre conjuntos de entidades e seus atributos é

(A) um atributo do tipo derivado é aquele que pode ser dividido em duas ou
mais partes, sem perda de significado.

(B) um atributo de um conjunto de entidades é multivalorado se for do tipo


literal com mais de 20 caracteres.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 134 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
(C) um atributo de um conjunto de entidades é monovalorado se for do tipo
numérico.

(D) um conjunto de entidades fraco é aquele que não tem atributos


suficientes para formar uma chave primária.

(E) um conjunto de entidades forte é aquele que tem apenas atributos literais
ou numéricos, não contendo atributos do tipo data.

60ª Questão) (ESAF – Analista de Finanças e Controle –


Desenvolvimento de Sistemas de Informação – 2008) Em linhas gerais,
normalizar um banco de dados é identificar o melhor lugar onde cada dado
pertence. A normalização é uma abordagem de projeto que minimiza a
redundância e otimiza as estruturas de dados, colocando os elementos de
informações nos grupos apropriados. Com relação às formas normais, é correto
afirmar que uma tabela está na

a) segunda forma normal (2FN), se e somente se estiver na primeira forma


normal (1FN) e todos os atributos não-chave forem totalmente dependentes da
chave primária.
b) primeira forma normal (1FN), se e somente se todos os domínios básicos
contiverem somente valores não atômicos, isto é, atributos multivalorados.
c) terceira forma normal (3FN), se e somente se estiver na segunda forma
normal (2FN) e todos os atributos não-chave forem independentes da chave
primária.
d) forma normal de Boyce/Codd (BCNF), se e somente se cada determinante
for uma chave estrangeira.
e) quarta forma normal (4FN), se somente se estiver na terceira forma
normal (3FN) e existirem dependências multivaloradas.

61ª Questão) (FCC – INFRAERO – Analista de Sistema – Banco de


Dados e Administrador de Dados - 2011) Em relação à normalização de dados,
considere:
I. Se existir um atributo multivalorado, deve-se criar um novo atributo que
individualize a informação multivalorada.

II. Se existir um atributo não atômico, deve-se dividi-lo em outros atributos


que sejam atômicos.

III. Todos os atributos primos devem depender funcionalmente de toda a


chave primária.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 135 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Os itens I, II e III referem-se direta e respectivamente a

a) 1FN, 1FN e 2FN.


b) 1FN, 2FN e 2FN.
c) 1FN, 2FN e 3FN.
d) 2FN, 2FN e 3FN.
e) 2FN, 3FN e 3FN.

(CESPE – MEC – Analista de Sistema –Administrador de Dados -


2011) Julgue os itens seguintes, a respeito de dependência funcional e
normalização.

62 Quando um esquema de relação tem mais de uma chave, cada uma delas
é denominada chave-candidata, e, nesse caso, deve-se decompor a relação com
base nas dependências funcionais até que somente uma chave primária
permaneça na relação.

63 Um atributo Y possui uma dependência funcional do atributo X se, para


cada valor do atributo X, existe exatamente um único valor do atributo Y. A
dependência funcional é representada por X -> Y.

64 A normalização de dados é o processo da análise de determinados


esquemas de relações com base em suas dependências funcionais e chaves
primárias. Esse processo visa alcançar as propriedades desejáveis de maximização
da redundância e de minimização das anomalias de inserção, exclusão e
atualização.

(CESPE – INPI – Analista – Gestão de TI/Desenvolvimento - 2013)


Acerca de normalização de dados, julgue os itens seguintes.

65 Ao se realizar uma modelagem para Data Warehouse, a forma


normalizada Snow Flake permite que as dimensões sejam modeladas na 3FN
(terceira forma normal). Dessa forma, todo modelo Snow Flake na 3FN estará
necessariamente também na forma normal BCNF (boyce-codd), visto que ambas
são baseadas no conceito de dependência transitiva.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 136 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
66 Um esquema de relação X estará na 2FN se todo atributo não primário A
em X tiver dependência funcional total da chave primária de X.

67 A primeira forma normal (1FN) é considerada parte da definição formal,


em que não é possível, como valor de atributo de uma única tupla, obter um
conjunto de valores, uma tupla de valores ou uma combinação entre ambos.

68ª Questão) (FCC – TCE/RS – Auditor Público Externo –


Processamento de Dados - 2014) Considerando o conceito de normalização
existente em bancos de dados relacionais, uma relação R está na segunda forma
normal se, além de estar na primeira forma normal,

(A) todos atributos que não fizerem parte da chave primária dessa relação
forem do tipo literal, com um comprimento máximo de 20 caracteres.
(B) não houver atributos do tipo numérico na chave primária dessa relação,
mas apenas atributos do tipo derivado.
(C) todos atributos que não fizerem parte da chave primária dessa relação
forem completamente dependentes de sua chave primária, ou seja, dependente
de toda a chave e não apenas de parte dela.
(D) houver um número mínimo de 3 atributos nessa relação, sendo que todos
esses atributos devem ser do tipo composto.
(E) os atributos de R estiverem restritos a uma lista predefinida de valores,
sendo essa lista composta por um número máximo de valores.

69ª Questão) (FCC – CNMP – Analista – Desenvolvimento de Sistemas


– 2015) Considere a tabela funcionario a seguir, cuja chave primária é FuncCPF,
em um banco de dados relacional.

A manipulação de dados nesta tabela pode levar a problemas conhecidos


como anomalias. Sobre elas, considere:

I. Para incluir uma nova tupla na tabela será necessário incluir ou os valores
de atributo do departamento para o qual o funcionário trabalha ou valores NULL,
se o funcionário ainda não trabalha para nenhum departamento. Este é um
exemplo de anomalia de inserção.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 137 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
II. A única maneira de inserir um novo departamento que ainda não tenha
funcionários é colocar valores NULL nos atributos para funcionário, já que este
procedimento não viola a integridade de entidade. Este é um exemplo de anomalia
de inserção.
III. Se o funcionário Antônio for excluído e este for o último funcionário
trabalhando no departamento RH, a informação referente a este departamento se
perde do banco de dados. Este é um exemplo de anomalia de exclusão.
IV. Se o valor de um dos atributos de determinado departamento for mudado
(do departamento 5, por exemplo) será necessário atualizar as tuplas de todos os
funcionários que trabalham neste departamento, caso contrário, o banco de dados
ficará incoerente. Este é um exemplo de anomalia de modificação.

Está correto o que se afirma APENAS em

(A) I, II e IV.
(B) I, III e IV.
(C) III e IV.
(D) I, II e III.
(E) II e IV.

70ª Questão) (FCC – TRT/15ª Região – Técnico Judiciário – Tecnologia


da Informação – 2015) O modelo E-R utiliza alguns conceitos básicos como
entidades, atributos e relacionamentos. Os atributos podem ser classificados em
obrigatórios, opcionais, monovalorados, multivalorados, simples ou compostos.
Nesse contexto, uma entidade chamada Empregado possui os atributos ID, Nome,
TelefonesContato, CNH e Endereço. Os atributos TelefonesContato e Endereço
são classificados, respectivamente, em

(A) simples e multivalorado.


(B) multivalorado e composto.
(C) obrigatório e opcional.
(D) composto e multivalorado.
(E) monovalorado e multivalorado.

71ª Questão) (FCC – TRT/15ª Região – Técnico Judiciário – Tecnologia


da Informação – 2015) Para representar o relacionamento entre entidades no
modelo E-R, várias notações foram criadas, como a da Engenharia da Informação,
criada por James Martin. Com relação a esta notação, considere o relacionamento
abaixo.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 138 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04

Neste relacionamento,

(A) todo departamento cadastrado deverá ter, obrigatoriamente, pelo


menos, um empregado.
(B) um mesmo empregado pode estar associado a muitos departamentos.
(C) somente dois departamentos poderão ser cadastrados.
(D) somente três empregados poderão ser relacionados a cada
departamento.
(E) podem haver departamentos cadastrados sem nenhum empregado
relacionado a ele.

72ª Questão) (FCC – TRT/3ª Região – Analista Judiciário – Tecnologia


da Informação – 2015) Participando do projeto de modelagem de um banco de
dados utilizando o MER, um analista de TI identificou na modelagem lógica duas
entidades ligadas entre si em um relacionamento muitos-para-muitos (n:m): a
entidade Processo e a entidade Advogado, cujos atributos são apresentados
abaixo.

Processo (NumeroProcesso, Ano, NumeroVara,


NumeroTribunalOrigem)

Advogado (NumeroOABAdvogado, Nome, Telefone)

Cada advogado pode estar relacionado a vários processos diferentes, ora


com status de advogado de acusação, ora com status de advogado de defesa, e
cada processo, pode ter vários advogados de acusação e/ou de defesa. Nestas
condições, para criar as tabelas no banco de dados real este relacionamento n:m
terá que ser desmembrado em dois relacionamentos 1:n com uma tabela de
ligação contendo os campos

(A) CodigoLigacao, StatusAdvogadoProcesso, Data, com chave


primária composta pelo campo CodigoLigacao.

(B) NumeroProcesso, NumeroOABAdvogado e


StatusAdvogadoProcesso, com chave primária composta pelos campos
NumeroProcesso e NumeroOABAdvogado.

Prof. Victor Dalton


www.estrategiaconcursos.com.br 139 de 140
Tecnologia da Informação para ICMS/SP 2017
Agente Fiscal de Rendas Gestão Tributária
Prof Victor Dalton Aula 04
(C) NumeroProcesso e NumeroOABAdvogado, apenas, com ambos os
campos sendo chave primária e estrangeira ao mesmo tempo.

(D) CodigoLigacao, NumeroProcesso, NumeroOABAdvogado e


StatusAdvogadoProcesso, com chave primária composta pelo campo
CodigoLigacao e chave estrangeira formada pelos campos NumeroProcesso
e NumeroOABAdvogado.

(E) NumeroProcesso, NumeroOABAdvogado e


StatusAdvogadoProcesso, com chave primária composta pelos
campos NumeroProcesso e NumeroOABAdvogado e chave estrangeira
formada pelo campo StatusAdvogadoProcesso.

GABARITO

1.e 2.a 3.a 4.b 5.d 6.a 7.c 8.d 9.b 10.e
11.e 12.a 13.c 14.e 15.d 16.b 17.a 18.c 19.a 20.d
21.e 22.e 23.d 24.c 25.a 26.b 27.a 28.d 29.c 30.b
31.a 32.e 33.b 34.e 35.d 36.d 37.a 38.b 39.a 40.d
41.a 42.c 43.b 44.c 45.e 46.c 47.d 48.a 49.d 50.b
51.a 52.b 53.c 54.e 55.d 56.a 57.a 58.d 59.d 60.a
61.a 62.e 63.c 64.e 65.e 66.e 67.c 68.c 69.b 70.b
71.e 72.b

Prof. Victor Dalton


www.estrategiaconcursos.com.br 140 de 140

Vous aimerez peut-être aussi