Aula 00 – Aula Demonstrativa Curso: TI para ISS Guarulhos (Resumo + Questões Comentadas) Professor: Ramon Souza
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
APRESENTAÇÃO Olá, futuros Inspetores Fiscais da Prefeitura de Guarulhos. É com grande satisfação que inicio mais este trabalho aqui na equipe do Exponencial Concursos. Meu nome é Ramon Jorge de Souza e sou servidor do Tribunal de Contas do Estado do Ceará, atuando com Auditoria de Tecnologia da Informação, mas já estou aguardando a nomeação para o cargo de Auditor Fiscal da Receita Estadual – Tecnologia da Informação da SEFAZ-SC no qual fui aprovado recentemente. Antes de iniciarmos a aula, passo a contar um pouco da minha trajetória: Sou de Quixadá, no interior do Ceará, e estudei todo o ensino fundamental e médio em escola pública. Logo ao sair do ensino médio, iniciei o curso de Técnico em Química no Instituto Federal do Ceará. No ano seguinte passei a cursar também Engenharia de Software na Universidade Federal do Ceará. Enquanto estava ainda cursando o ensino técnico no IFCE, surgiu o concurso para a Petrobrás Biocombustíveis da minha cidade. Então resolvi fazer a prova, pois estava animado com a possibilidade de trabalhar ao lado de casa com um salário bem atrativo para o local. Ai que veio a surpresa, fiquei em 30º lugar. Embora não tenha sido convocado para esse concurso, percebi que era possível ser aprovado, desde que me dedicasse mais. Quando estava concluindo o curso técnico em Química, fui selecionado para trabalhar na Petrobrás Biocombustíveis como terceirizado. Trabalhando ao lado de concursados, decidi que também queria aquilo para minha vida e, então, passei a estudar com mais afinco e a realizar diversas provas, principalmente da Petrobrás, mesmo que não fossem no Estado do Ceará. Nesse meio tempo cursava Engenharia de Software e já realizava também alguns concursos para essa área de formação. No ano de 2012, consegui obter algumas classificações tanto para a área de Química, quanto para a área de TI. Porém, nada de convocações. Mas continuei estudando. Eis que o ano de 2013 foi o ano da colheita de frutos. Estava de férias quando chegou a mim o telegrama de convocação para assumir o cargo de Técnico em Química na Petrobras S/A. Mas e aí? Aí já era tarde demais, já tinha decidido que não queria mais seguir na área de química e sim queria passar em concurso para TI. Abdiquei do direito a posse no cargo e continuei estudando para a área de TI. Ainda estava cursando Engenharia de Software e nesse período fiz um estágio em uma empresa privada. Como disse antes, estava na época da colheita, então fui convocado para o concurso do Banco Regional de Brasília (BRB). Pergunta-me então: assumiu? Não. Calma, este não assumi, pois como Prof. Ramon Souza
2 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
disse ainda estava cursando Engenharia de Software e não tinha o diploma de nível superior exigido pelo cargo. Isso se repetiu para a convocação para a Empresa Brasileira de Serviços Hospitalares (EBSERH). No final de 2013, passei para o concurso do Ministério do Planejamento, para o cargo de Analista em Tecnologia da Informação. Com receio de acontecer o mesmo que os anteriores, solicitei colação de grau especial e consegui obter o diploma. Pronto, estava preparado para assumir o MPOG, mas como ele demorava a chamar estudava ainda firmemente para outros concursos. Convocado então em 2014 para assumir o MPOG, mudei-me para Brasília, mas não parei de estudar. Nesse período, fui convocado para a DATAPREV e para o INSS, mas optei por não assumir esses cargos. Em 2015, continuei prestando alguns concursos, e obtive o 4º lugar no concurso do INSS, o 6º lugar no concurso da ANTAQ, 1º lugar no concurso para o Conselho Nacional do Ministério Público (CNMP) e também 1º lugar para o Tribunal de Contas do Estado do Ceará (TCE-CE). Em 2017, depois de quase aposentar a caneta preta, retornei aos estudos e dessa vez resolvi estudar para concursos fiscais. Em 2018, realizei o concurso para da Secretaria de Estado da Fazenda de Santa Catarina (SEFAZ-SC) e fui aprovado para o cargo de Auditor Fiscal da Receita Estadual – Tecnologia da Informação. Agora que vocês já me conhecem, temos a missão de oferecer para vocês este curso. Seguindo a didática do Exponencial Concursos estudaremos os principais pontos da teoria, sempre tentando trazer o conteúdo de forma esquematizada para que você ganhe tempo na sua preparação para aprovação. Contem comigo nessa jornada! Estarei à disposição no Fórum tiradúvidas e através dos contatos disponíveis no perfil do professor https://bit.ly/2RVdGLS. Para dicas sobre concursos, acesse: Exponencial Concursos https://www.youtube.com/channel/UCr9rg5WOPmXvZgOfBl-HEuw
@exponencial_concursos https://www.instagram.com/exponencial_concursos/?hl=pt-br
E para dicas sobre Informática, TI e Análise de Informações, siga: @profecoach_ramonsouza https://www.instagram.com/profecoach_ramonsouza/?hl=pt-br
Prof. Ramon Souza
3 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
No quadro abaixo segue o programa do nosso curso. Aula
Conteúdo
00
Banco de dados: conceitos. Modelagem de dados relacional.
01 02
Modelagem Conceitual. Business Intelligence. Modelagem de dados multidimensional. Conceitos e estratégias de implantação de Data Warehouse, ETL. OLAP. 03 Data Mining. 04 Gerência de Projetos: Conceitos. Processos do PMBOK. 05 Fundamentos de COBIT (Versão 5). 06 Gerência de Serviços de TI: Fundamentos da ITIL® (Versão 3). 07 Gestão de Processos de Negócio: Modelagem de processos. Técnicas de análise e modelagem de processo. BPM – Business Process Modeling. 08 Segurança da informação: conceitos básicos. Plano de continuidade de negócio. Noções sobre criptografia, assinatura digital e autenticação. Certificação digital. Auditoria, vulnerabilidade e conformidade. *Confira o cronograma de liberação das aulas no site do Exponencial, na página do curso. Caros alunos, a banca VUNESP será a realizadora deste concurso. Resolveremos o máximo de questões dessa banca, mas sempre que necessário ou achar cabível complementaremos com outra banca. Além das questões disponíveis no PDF, vou disponibilizar também cadernos de questões dos assuntos de cada uma das aulas. Para resolver esses cadernos, você deverá acessar o nosso Sistema de Questões (https://bit.ly/2W8A4Vi). Você pode resolver 100 questões por dia de forma gratuita. Para ter acesso aos comentários dos professores, é só assinar, custa baratinho e você terá acesso a centenas de milhares de questões comentadas. Os links para os cadernos estarão ao final das seções de questões, mas para que vocês conheçam como funcionam estes cadernos, segue abaixo o link de acesso para o caderno com os assuntos desta aula. Caderno de Questões Sobre o Tema O caderno referente ao https://bit.ly/2GD5RZf.
assunto
desta
aula
pode
Prof. Ramon Souza
ser
acessado
em
4 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Sugiro o seguinte roteiro para você aproveitar melhor esse curso e potencializar suas chances de aprovação: ▪
▪
▪
▪
▪
Primeiro dia o
Leia o PDF e/ou assista as videoaulas da Aula 00.
o
Não resolva todos os exercícios propostos, resolva apenas os que estão no corpo da aula e talvez mais uns 5 ou 10 do final.
Uma semana depois o
Resolva os demais exercícios da Aula 00.
o
Revise a Aula 00 Exponencial).
o
Leia o PDF e/ou assista as videoaulas da Aula 01.
através
dos
nossos
esquemas
(Risco
Duas semanas depois o
Resolva alguns exercícios (10 a 20) do caderno da Aula 00.
o
Resolva os demais exercícios da Aula 01.
o
Revise a Aula 01 Exponencial).
o
Leia o PDF e/ou assista as videoaulas da Aula 02.
através
dos
nossos
esquemas
(Risco
Três semanas depois o
Resolva alguns exercícios (10) do caderno da Aula 00.
o
Resolva alguns exercícios (10 a 20) do caderno da Aula 01.
o
Resolva os demais exercícios da Aula 02.
o
Revise a Aula 02 Exponencial).
o
Leia o PDF e/ou assista as videoaulas da Aula 03.
através
dos
nossos
esquemas
(Risco
E assim sucessivamente.
Logicamente, isto é um roteiro básico que pode ser adaptado. Se você estuda de outra forma ou mesmo possui um programa de Coaching (recomendo https://bit.ly/2GEyPbd), fique tranquilo, pois irá aproveitar bastante as nossas aulas. Vamos buscar esses pontos rumo à aprovação! Bons estudos! Professor Ramon Souza
Prof. Ramon Souza
5 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Aula 00 – Banco de Dados Relacionais.
ASSUNTOS 1.
PÁGINA
BANCOS DE DADOS RELACIONAIS ................................................... 9
1.1 Conceitos preliminares ....................................................................... 9 1.2 Características dos bancos de dados .................................................. 10 1.3 Projeto de um banco de dados .......................................................... 15 1.4 Bancos de dados relacionais ............................................................. 21 2.
METADADOS ................................................................................ 23
3.
TABELAS, VISÕES (VIEWS) E ÍNDICES ........................................... 24
3.1 Tabelas .......................................................................................... 24 3.2 Visões (views) ................................................................................ 28 3.3 Índices........................................................................................... 29 4.
CHAVES E RELACIONAMENTOS ...................................................... 30
5.
NORMALIZAÇÃO ........................................................................... 33
6.
QUESTÕES COMENTADAS ............................................................. 35
7.
LISTAS DE EXERCÍCIOS ................................................................ 51
8.
GABARITO ................................................................................... 63
9.
REFERÊNCIAS .............................................................................. 63
Prof. Ramon Souza
6 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Para facilitar sua referência, abaixo listamos as esquematizações desta aula: Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema Esquema
1 – Banco de Dados (BD). .................................................................................. 9 2 – Sistema Gerenciador de Bancos de Dados (SGBD). .......................................... 9 3 – Sistema de Bancos de Dados (SBD). .............................................................. 9 4 – Características dos bancos de dados. ............................................................ 11 5 – Desvantagens da abordagem de SGBD. ......................................................... 12 6 – Propriedades das transações. ....................................................................... 13 8 – Modelos de bancos de dados. ....................................................................... 15 9 – Arquitetura de 3 esquemas. ......................................................................... 16 10 – Independência lógica e física de dados......................................................... 17 11 – Modelos de Dados X Arquitetura de três esquemas. ....................................... 18 12 – Modelos de dados (modelos lógicos). ........................................................... 19 13 – Modelo relacional: conceitos básicos. ........................................................... 21 14 – Doze (treze) regras de Codd para os bancos de dados relacionais. .................. 22 15 – Catálogo ou dicionário de dados. ................................................................. 23 16 – Conceitos do modelo relacional. .................................................................. 24 17 – Operações com relações (álgebra relacional). ............................................... 26 18 – Visão (view). ............................................................................................ 28 19 – Índices. ................................................................................................... 29 20 – Chaves. ................................................................................................... 30 21 - Relacionamentos ....................................................................................... 31 22 – Formas normais. ....................................................................................... 33
Prof. Ramon Souza
7 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
O que a banca mais cobra sobre esse assunto?
Caros alunos, a nossa aula está completa e aborda os assuntos previstos no edital. Contudo, para você que quer otimizar os seus estudos, não tem tanto tempo para se dedicar a toda essa aula ou deseja saber em que aspectos focar em suas revisões, vou fazer aqui um raio X considerando as questões de provas anteriores da banca. Assim, você poderá selecionar os pontos da aula que deve ter mais atenção, pois são mais prováveis de cobrança pela banca. Uma maior quantidade de símbolos significa que o assunto em questão já foi cobrado em um maior número de questões da banca nos últimos anos.
Item da Aula
Assunto
5
Normalização
4
Chaves
3.1
Tabelas
4 3.3 2
Relacionamentos Índices Metadados: catálogo e dicionário.
1.3
Projeto de banco de dados
3.2
Visões
1.1, 1.2 e 1.4
Incidência
Bancos de Dados Relacionais
Prof. Ramon Souza
8 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
1.
BANCOS DE DADOS RELACIONAIS
1.1 Conceitos preliminares Um banco de dados é uma coleção de dados relacionados, em que os dados podem ser entendidos como fatos conhecidos que podem ser registrados e que possuem significado implícito.
Banco de Dados
Pode ter qualquer tamanho e complexidade
Representa algum aspecto do mundo real
Pode ser manual ou computadorizado
Coleção logicamente coerente de dados com algum significado inerente
Projetado, construído e populado com dados para uma finalidade específica
Esquema 1 – Banco de Dados (BD).
Um Sistema Gerenciador de Banco de Dados (SGBD) é uma coleção de programas que permite aos usuários criar e manter um banco de dados. •Permite criar e manter um Banco de dados.
SGBD (coleção de programas)
•Auxilia na: ▪Definição ▪Construção ▪Manipulação ▪Compartilhamento ▪Proteção ▪Manutenção
Esquema 2 – Sistema Gerenciador de Bancos de Dados (SGBD). Um Sistema de Bancos de Dados (SBD) é a união do banco de dados com o software SGBD.
BD
SGBD
SBD
Esquema 3 – Sistema de Bancos de Dados (SBD). Prof. Ramon Souza
9 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
1.2 Características dos bancos de dados Agora que já entendemos o que é um banco de dados, passemos a descrever quais as suas características. Iremos destacar as características apresentadas pelos principais autores na literatura de bancos de dados. Para Elsmari e Navathe, os bancos de dados divergem dos antigos sistemas de arquivos por apresentarem quatro características principais: ▪
Natureza de autodescrição de um sistema de banco de dados: um banco de dados contém uma definição ou descrição completa de sua estrutura e restrições. Essa definição é armazenada no catálogo do SGBD, que possui informações como a estrutura de cada arquivo, o tipo e o formato de armazenamento de cada item de dados e diversas restrições sobre os dados. A informação armazenada no catálogo é chamada de metadados, e descreve a estrutura do banco de dados principal.
▪
Isolamento entre programas e dados; e abstração de dados: a abstração de dados é a capacidade de um SGBD oferecer 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. Decorrem deste conceito: o Independência dos dados dos programas: a estrutura dos arquivos de dados é armazenada no catálogo do SGBD separadamente dos programas de acesso. o Independência da operação do programa: alguns bancos de dados trabalham com o conceito de operações, que são funções ou métodos que podem ser invocados pelo programa. Os programas podem atuar invocando essas operações, independentemente de como estas estão implementadas.
▪
Suporte de múltiplas visões de dados: cada usuário pode exigir um ponto de vista ou visão diferente do banco de dados. Um SGBD multiusuário, cujos usuários têm uma série de aplicações distintas, precisa oferecer facilidades para definir múltiplas visões.
▪
Compartilhamento de dados e processamento de transação multiusuário: o SGBD precisa incluir um software de controle de concorrência para garantir que vários usuários tentando atualizar o mesmo dado faça isso de maneira controlada, de modo que o resultado dessas atualizações seja correto.
Prof. Ramon Souza
10 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Além dessas características, existem diversas outras. Listamos a seguir aquelas trazidas pelos principais autores. Elsmari e Navathe (vantagens de usar a abordagem SGBD) ▪Controle de redundância. ▪Restrição de acesso não autorizado. ▪Armazenamento persistente para objetos do programa. ▪Estruturas de armazenamento e técnicas de pesquisa processamento eficiente de consulta. ▪Backup e recuperação. ▪Múltiplas interfaces do usuário. ▪Representação de relacionamentos complexos entre dados. ▪Restrições de integridade. ▪Dedução e ação usando regras. ▪Potencial para garantir padrões. ▪Tempo reduzido para o desenvolvimento de aplicações. ▪Flexibilidade. ▪Disponibilidade de informações atualizadas. •Economias de escala.
para
o
Date (benefícios da abordagem de BD) ▪O dado pode ser compartilhado. ▪A redundância pode ser reduzida. ▪Inconsistências podem ser evitadas. ▪Pode-se utilizar o suporte a transações. ▪A integridade pode ser mantida. ▪A segurança pode ser aperfeiçoada. ▪Requisitos conflitantes podem ser balanceados. ▪Padrões podem ser utilizados. Sylberchatz, Korth e Sudarshan (desvantagens de usar sistema de arquivo) ▪Redundância e inconsistência de dados. ▪Dificuldade de acesso a dados. ▪Isolamento dos dados. ▪Problemas de integridade. ▪Problemas de atomicidade. ▪Anomalias de acesso concorrente. ▪Problemas de segurança.
Esquema 4 – Características dos bancos de dados. Não se preocupe em memorizar todas estas listas, mas tenha noção de que elas se propõem a distinguir a abordagem de bancos de dados da antiga abordagem por sistema de arquivos. Caso seja necessário se aprofundar de alguma destas características, faremos isto em tópico específico.
Prof. Ramon Souza
11 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Então professor, os bancos de dados resolvem todos os meus problemas? Não é bem assim, essa abordagem possui também algumas desvantagens, principalmente no que se refere à custos adicionais do uso de um SGBD que devem ser considerados. Estes custos adicionais podem ser associados aos seguintes fatores: ▪ ▪ ▪
Alto investimento inicial em hardware, software e treinamento. A generalidade que um SGBD oferece para a definição e o processamento de dados. Esforço adicional para oferecer funções de segurança, controle de concorrência, recuperação e integridade.
Então como desvantagens dos bancos de dados temos esquematicamente:
Custos adicionais
Alto investimento inicial em hardware, software e treinamento
Generalidade para definição e processamento de dados
Esforço adicional para funções de segurança, concorrência, recuperação e integridade
Esquema 5 – Desvantagens da abordagem de SGBD.
Prof. Ramon Souza
12 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Processamento de transações em bancos de dados relacionais Vamos detalhar a característica dos bancos de dados do compartilhamento de dados e processamento de transação multiusuário, que é uma das mais cobradas em provas. Um programa de aplicação de banco de dados que executa um banco de dados relacional normalmente executa uma ou mais transações. Dessa forma, devemos então entender o que é uma transação e quais as suas propriedades. Uma transação é um programa em execução ou processo que inclui um ou mais acessos ou operações de banco de dados, como fazer a leitura do banco de dados ou inserir, excluir e atualizar dados. Uma única transação pode envolver qualquer número de operações, mas ao final de uma transação, ela precisar deixar o banco de dados em um estado válido ou coerente, que satisfaça todas as restrições especificadas para o banco, isto é, deve manter a integridade do banco de dados.
Conceito: uma transação deve parecer executar isolada das demais.
Conceito:
Durabilidade
Conceito: Uma transação deve levar o banco de dados de um estado consistente para outro.
Isolamento
Conceito: unidade de processamen to atômica. A transação deve ser realizada em sua totalidade ou não deve ser realizada de forma alguma.
Consistência
Atomicidade
As transações devem possuir quatro propriedades ou princípios básicos, chamadas propriedades ACID, que devem ser impostas pelos métodos de controle de concorrência e recuperação do SGBD. as mudanças realizadas pela transação confirmada devem ser persistidas no banco de dados.
Responsável
Responsável
Responsável
Responsável
Subsistema de recuperação.
Programador ou módulo de restrições de integridade.
Subsistema de controle de concorrência.
Subsistema de recuperação.
Esquema 6 – Propriedades das transações.
Prof. Ramon Souza
13 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
1(VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas) Há 4 propriedades básicas que uma transação de um banco de dados relacional deve respeitar. Assinale a alternativa que contém duas dessas propriedades. a) Atomicidade e isolamento. b) Consistência e normalização. c) Durabilidade e paralelismo. d) Normalização e atomicidade. e) Paralelismo e isolamento. Resolução:
Conceito: uma transação deve parecer executar isolada das demais.
Conceito:
Durabilidade
Conceito: Uma transação deve levar o banco de dados de um estado consistente para outro.
Isolamento
Conceito: unidade de processamen to atômica. A transação deve ser realizada em sua totalidade ou não deve ser realizada de forma alguma.
Consistência
Atomicidade
As transações devem possuir quatro propriedades ou princípios básicos, chamadas propriedades ACID, que devem ser impostas pelos métodos de controle de concorrência e recuperação do SGBD. São elas: as mudanças realizadas pela transação confirmada devem ser persistidas no banco de dados.
Responsável
Responsável
Responsável
Responsável
Subsistema de recuperação.
Programador ou módulo de restrições de integridade.
Subsistema de controle de concorrência.
Subsistema de recuperação.
Gabarito: Letra A.
Prof. Ramon Souza
14 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
1.3 Projeto de um banco de dados É importante destacar que a estrutura de um banco de dados pode ser descrita com base em um modelo de dados. Um modelo de (banco de) dados é uma descrição dos tipos de informações que estão armazenadas em um banco de dados.
Registra os dados.
Compreensão intermediária. Representação específica de um modelo interno, utilizando as estruturas de BD
Físico
Facilmente comprendido por usuários.
Lógico
Conceitual
Dependendo do grau de abstração utilizado para representar esta estrutura, falamos em diferentes modelos: Difícil compreensão pelos usuários. Descrevem o armazenamento dos dados.
Independente de hardware e software.
Dependem do SGBD.
Totalmente dependentes do SGBD.
Elaborados na Modelagem Conceitual.
Elaborados no Projeto Lógico.
Elaborados no Projeto Físico.
Ex.: Modelo Entidade Relacionamento.
Ex.: Modelo Relacional.
Esquema 7 – Modelos de bancos de dados.
Prof. Ramon Souza
15 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Arquitetura de 3 esquemas A arquitetura de três esquemas visa separar as aplicações do usuário do banco de dados físico. Vejamos esses três níveis: Descreve parte do banco de dados geralmente com um modelo lógico.
Descreve o banco de dados inteiro geralmente com um modelo lógico. Descreve a estrutura de armazenamento físico geralmente com um modelo físico.
Esquema 8 – Arquitetura de 3 esquemas.
2(VUNESP - 2013 - MPE-ES - Agente Especializado Analista de Banco de Dados) Segundo o conceito de abstração de dados empregado em bancos de dados relacionais, é correto afirmar que a) esse conceito não se aplica a bancos de dados distribuídos. b) não se admite a concorrência de usuários, de forma simultânea. c) não se admitem valores nulos em suas tabelas. d) seus usuários finais têm acesso a todos os níveis de abstração de dados. e) seus usuários finais não têm acesso ao nível físico de armazenamento dos dados. Resolução: A abstração de dados é a capacidade de um SGBD oferecer 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. A arquitetura de três esquemas visa separar as aplicações do usuário do banco de dados físico. Nessa arquitetura, os usuários finais possuem acesso aos níveis externo, mas não acessam o esquema interno. Gabarito: Letra E.
Prof. Ramon Souza
16 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Independência lógica e física de dados A arquitetura de três esquemas pode ser usada para explicar melhor o conceito de independência de dados, que pode ser definida como a capacidade de alterar o esquema em um nível do sistema de banco de dados sem ter de alterar o esquema no nível mais alto.
Temos dois tipos de independência de dados:
Independência lógica de dados • Capacidade de alterar o esquema conceitual sem ter de alterar os esquemas externos ou de programas de aplicação. Independência física de dados • Capacidade de alterar o esquema interno sem ter de alterar o esquema conceitual e, por consequência, sem ter que alterar os esquemas externos. Esquema 9 – Independência lógica e física de dados.
Prof. Ramon Souza
17 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Modelos de dados X Arquitetura de três esquemas Caros alunos, é importante que vocês tenham bastante cuidado para não confundir os modelos de dados com os níveis da arquitetura de três esquemas. É muito fácil confundir, pois além de possuírem a mesma quantidade de níveis, temos inclusive nomes iguais para representar níveis desses modelos.
Modelos de dados
Arquitetura de 3 esquemas
Representar os conceitos usados para descrever a estruturas dos bancos de dados.
Representar as camadas de interação do usuário com o banco de dados.
Modelo conceitual ou de alto nível (dados)
Nível externo ou de visão
Parte do banco de dados Dados
(geralmente usa modelo lógico baseado em modelo conceitual)
Modelo lógico, representativo ou de implementação
Nível conceitual
Banco de dados inteiro Estruturas de banco de dados
(geralmente usa modelo lógico baseado em modelo conceitual)
Modelo físico
Nível interno
Armazenamento
Estruturas de armazenamento (usa modelo físico)
Esquema 10 – Modelos de Dados X Arquitetura de três esquemas.
Prof. Ramon Souza
18 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Principais modelos de dados (modelos lógicos) Os SGBDs são classificados conforme o modelo de dados utilizados. Os principais modelos de dados são:
Modelo relacional •Dados como uma coleção de tabelas.
Modelo de objetos •Dados como objetos, propriedades (atributos) e operações (métodos).
Modelo objeto-relacional •SGBD relacional com extensões para modelos de objetos.
Modelo XML •Estruturas de árvores hierárquicas com uso de tags.
Modelo de rede •Registros relacionados de forma 1:N.
Modelo hierárquico •Estruturas de árvores hierárquicas.
Esquema 11 – Modelos de dados (modelos lógicos).
Prof. Ramon Souza
19 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
3(VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da Informação) Assinale a alternativa que apresenta uma afirmação verdadeira sobre o modelo hierárquico de bancos de dados; a) Cada registro, exceto a raiz, participa como filho em pelo menos dois relacionamentos pai-filho. b) Cada registro, exceto a raiz, participa como filho em exatamente um relacionamento pai-filho. c) O registro denominado raiz participa como filho em pelo menos um relacionamento pai-filho. d) O registro denominado raiz participa como filho em, no máximo, dois relacionamentos pai-filho. e) Todo registro que participa como pai em um relaciona- mento pai-filho é chamado de folha. Resolução: O Modelo hierárquico representa os dados como estruturas de árvore hierárquicas. Cada hierarquia simboliza uma série de registros relacionados. Não existe uma linguagem padrão para o modelo hierárquico.
Neste modelo, cada elemento inferior na hierarquia (filho) só é descendente de um único elemento superior (pai). Gabarito: Letra B.
Prof. Ramon Souza
20 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
1.4 Bancos de dados relacionais O modelo relacional usa o conceito de relação matemática como seu bloco de montagem básico, e sua base teórica reside na teoria de conjunto e lógica de predicado de primeira ordem. Com base neste modelo, um banco de dados relacional utiliza as relações para representar tanto os dados quanto os relacionamentos entre estes dados. Conjuntos de relações ou tabelas que representam dados e relacionamentos.
Conceitos
Relação matemática montagem básico.
é
o
bloco
de
Base teórica reside na teoria de conjunto e lógica de predicado de primeira ordem.
Modelo Relacional
Princípio da Informação
Todo o conteúdo de informação do banco de dados é representado como valores explícitos em posições de colunas em linhas de tabelas. Aspecto estrutural: percebidos usuários como tabelas.
Aspectos de descrição
pelos
Aspecto de integridade: essas tabelas satisfazem a certas restrições de integridade. Aspecto manipulador: os operadores disponíveis para que o usuário possa manipular essas tabelas derivam tabelas a partir de outras tabelas.
Esquema 12 – Modelo relacional: conceitos básicos.
Prof. Ramon Souza
21 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Doze (Treze) Regras de Codd para Bancos de Dados Relacionais
Doze (treze) regras de Codd para Bancos Relacionais
As Doze Regras de Codd são um conjunto de treze regras (é isso mesmo! Elas são enumeradas de zero a doze) propostas por Edgar F. Codd. Essas regras são usadas para definir o que é necessário para que um sistema de gerenciamento de banco de dados para ser considerado relacional. Vejamos estas regras: Regra 0 - Regra fundamental ou regra base Regra 1 - A regra da informação ou Princípio da Informação Regra 2 - A regra de acesso garantido Regra 3 - Tratamento sistemático de valores nulos Regra 4 - Catálogo on-line baseado no modelo relacional Regra 5 - Sublinguagem Ampla de Dados Regra 6 - Atualização de visões Regra 7 - Inserção, Atualização, e Exclusão de alto nível Regra 8 - Independência Física de dados Regra 9 - Independência Lógica de Dados Regra 10 - Independência de Integridade Regra 11 - Independência de Distribuição Regra 12 - A não-transposição das regras
Esquema 13 – Doze (treze) regras de Codd para os bancos de dados relacionais.
Prof. Ramon Souza
22 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
2.
METADADOS Catálogo ou dicionário de dados
Metadados ou informações de descritor
Estrutura de cada tipo de arquivo
Tipo
Formato de armazenamento
Restrições sobre os dados
Esquema 14 – Catálogo ou dicionário de dados.
4(VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Além de armazenar dados em tabelas, um banco de dados relacional armazena também informações sobre essas tabelas, tais como seus nomes e atributos. Essas informações são armazenadas no(a) chamado(a) a) algoritmo de busca. b) bloqueio granular. c) catálogo do sistema. d) índice generalizado. e) rede de relacionamentos. Resolução: Uma característica fundamental da abordagem de banco de dados é que seu sistema contém não apenas o próprio banco de dados, mas também uma definição ou descrição completa de sua estrutura e restrições, que fica armazenada no catálogo ou dicionário de dados do SGBD. Esse catálogo contém informações como a estrutura de cada arquivo, o tipo e o formato de armazenamento de cada item de dados e diversas restrições sobre os dados. A informação armazenada no catálogo é chamada de metadados, e descreve a estrutura do banco de dados. Gabarito: Letra C.
Prof. Ramon Souza
23 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
3.
TABELAS, VISÕES (VIEWS) E ÍNDICES
3.1 Tabelas Como vimos, o modelo relacional consiste em uma coleção de tabelas (ou relações). Podemos dizer, então, que a tabela é a estrutura chave deste modelo, servindo para representar os dados e relacionamentos entre esses dados. A cada uma destas tabelas é atribuído um nome único. Tabela (relação) – representa dados e relacionamentos. Coluna (atributo) - ajuda a interpretar o significado dos valores das linhas.
Domínio - tipo de dado que descreve os tipos de valores que podem aparecer em cada coluna.
Grau (aridade) número de colunas de uma relação.
Linha (tupla) - coleção de valores de dados relacionados.
Esquema 15 – Conceitos do modelo relacional.
Agora que já vimos os componentes básicos de uma tabela, vamos estudar algumas características importantes sobre as relações. ❖ Ordenação de tuplas em uma relação: uma relação é definida como um conjunto de tuplas. Matematicamente, os elementos de um conjunto não possuem nenhuma ordem em particular, isto é, uma relação não é sensível à ordenação de tuplas. ❖ Ordem dos valores dentro de uma tupla: uma tupla é uma lista ordenada de valores, de modo que a ordem dos valores em uma tupla – e, portanto, dos atributos em um esquema de relação – é importante. (Aqui há uma divergência, pois Date considera que a tupla é um conjunto, também não importando os valores). Em resumo, o o
A ordem das linhas não é relevante. A ordem das colunas é relevante, a não ser correspondência entre elas e seus valores seja mantida.
Prof. Ramon Souza
que a
24 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
❖ Valores e NULLs nas tuplas: cada valor em uma tupla é um valor atômico, isto é, não é divisível em componentes dentro da estrutura do modelo relacional. Um conceito importante é o dos valores NULL, que são usados para representar os valores de atributos que podem ser desconhecidos ou não se aplicam a uma tupla. ❖ Interpretação (significado) de uma relação: o esquema da relação pode ser interpretado como uma declaração ou um tipo de afirmação (ou asserção) e cada tupla pode ser interpretada como um fato ou instância particular da afirmação.
5(VUNESP - 2014 - SEDUC-SP - Analista de Tecnologia da Informação) Muitas vezes, não inserimos o valor em um campo de um registro de um banco de dados relacional, por não dispor desse valor ou por não conhecê-lo. Nesse caso, essa ausência de valor é chamada de valor. a) chave. b) coringa. c) morto. d) nulo. e) zero. Resolução: Um conceito importante é o dos valores NULL, que são usados para representar os valores de atributos que podem ser desconhecidos ou não se aplicam a uma tupla. Gabarito: Letra D.
Prof. Ramon Souza
25 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Operações com relações (álgebra relacional) Agora que já vimos os componentes básicos e características das tabelas, vamos passar ao estudo das operações que podem ser realizadas nas tabelas. A álgebra relacional define um conjunto de operações nas relações, em paralelo com as operações algébricas usuais, como adição, subtração ou multiplicação, que operam em números. Assim como as operações algébricas nos números tomam um ou mais números como entrada e retornam um número como saída, as operações de álgebra relacional geralmente tomam uma ou duas relações como entrada e retornam uma relação como saída. Na álgebra relacional, o termo predicado é utilizado para descrever a condição que deve ser satisfeita na operação. As operações são esquematizadas no quadro a seguir. Operações da álgebra relacional Seleção (σ)
Retorna as tuplas da relação que satisfazem um predicado.
Projeção (П)
Retorna os atributos especificados de todas as linhas da relação de entrada, removendo as tuplas duplicadas da saída.
Junção (
)
Retorna pares de linhas das duas relações de entrada que têm o mesmo valor em todos os atributos que possuem o mesmo nome.
Produto cartesiano (X)
Retorna todos os pares de linhas das duas relações de entrada (independentemente de ter ou não os mesmos valores em atributos comuns).
União (Ս)
Retorna as tuplas que estão na primeira relação, na segunda relação, ou em ambas.
Intersecção (Ո)
Retorna as tuplas que aparecem tanto na primeira relação quanto na segunda.
Diferença (-)
Retorna tuplas que aparecem na primeira relação, mas não estão na segunda.
Esquema 16 – Operações com relações (álgebra relacional).
Prof. Ramon Souza
26 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
6(VUNESP - 2013 - MPE-ES - Agente Especializado Analista de Banco de Dados) Dentre os diversos tipos de operações disponibilizadas em um banco de dados relacional está, por exemplo, a realização de consultas sobre valores armazenados em tabelas. A operação que consiste em definir quais devem ser as colunas a serem exibidas em uma consulta é a a) divisão. b) multiplexação. c) projeção. d) seleção. e) união. Resolução: A operação Projeção (П) seleciona os atributos especificados de todas as linhas da relação de entrada, removendo as tuplas duplicadas da saída. Em resumo, Operações da álgebra relacional Seleção (σ)
Retorna as tuplas da relação que satisfazem um predicado.
Projeção (П)
Retorna os atributos especificados de todas as linhas da relação de entrada, removendo as tuplas duplicadas da saída.
Junção (
)
Retorna pares de linhas das duas relações de entrada que têm o mesmo valor em todos os atributos que possuem o mesmo nome.
Produto cartesiano (X)
Retorna todos os pares de linhas das duas relações de entrada (independentemente de ter ou não os mesmos valores em atributos comuns).
União (Ս)
Retorna as tuplas que estão na primeira relação, na segunda relação, ou em ambas.
Intersecção (Ո)
Retorna as tuplas que aparecem tanto na primeira relação quanto na segunda.
Diferença (-)
Retorna tuplas que aparecem na primeira relação, mas não estão na segunda.
Gabarito: Letra C.
Prof. Ramon Souza
27 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
3.2 Visões (views) Uma visão (ou view) é uma única tabela que é derivada de outras tabelas, que podem ser tabelas de base ou mesmo outras visões previamente definidas. Podemos ainda entender uma visão como uma maneira alternativa de visualização dos dados de uma ou mais tabelas.
Visão (view)
Tabela derivada de outras tabelas (tabelas base ou outras visões).
Maneira alternativa de visualização dos dados de uma ou mais tabelas.
Consulta prédefinida ou armazenada.
Se for armazenada é visão materializada.
Tabela virtual: não necessariamente existe em forma física.
Esquema 17 – Visão (view).
Prof. Ramon Souza
28 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
3.3 Índices Os índices são estruturas de acesso auxiliares associados a tabelas.
Estrutura de acesso auxiliar.
Uso de ponteiros para a localização dos dados.
Índice
Utilizados para agilizar a recuperação de registros
Oferecem caminhos de acesso secundários
Não devem ser criados de maneira ilimitada e sem cuidados.
Esquema 18 – Índices. 7(VUNESP - 2013 - MPE-ES - Agente Especializado Analista de Banco de Dados) Uma das decisões a serem tomadas no projeto físico de um banco de dados relacional é a criação de estruturas que possibilitem a obtenção mais rápida dos dados das consultas. Tal estrutura é composta pelos (pelas) a) logs. b) índices. c) gatilhos. d) privilégios. e) permissões. Resolução: Os índices são estruturas de acesso auxiliares associados a tabelas, que são utilizados para agilizar a recuperação de registros em resposta a certas condições de pesquisa. As estruturas de índice são arquivos adicionais no disco que oferecem caminhos de acesso secundários, os quais oferecem formas alternativas de acessar os registros sem afetar o posicionamento físico no arquivo de dados primário no disco. Gabarito: Letra B. Prof. Ramon Souza
29 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
4.
CHAVES E RELACIONAMENTOS
Chaves
Conjunto de um ou mais atributos que, coletivamente, permitem identificar de forma exclusiva uma tupla.
Chave
Chave candidata
Superchave
Chave primária
Superchave com a propriedade adicional de que a remoção de qualquer dos atributos a faz deixar de ser chave.
Cada uma das chaves possíveis em uma relação.
Chave candidata que é escolhida pelo designer de banco de dados como o principal meio de identificar tuplas.
Chave estrangeira Atributo (s) que são chave primária ou candidata de outra relação.
Esquema 19 – Chaves. 8(VUNESP - 2017 - TJM-SP - Técnico de Comunicação e Processamento de Dados) Um dos conceitos básicos da modelagem de bancos de dados relacionais são as chaves primárias, sobre as quais, é correto a) devem ser compostas por, pelo menos, dois atributos. b) em cada banco de dados deve haver uma tabela que armazena as chaves primárias de todas as demais tabelas. c) devem ser armazenadas, de forma redundante, em pelo menos duas tabelas distintas do banco de dados. d) não podem ser formadas por nomes próprios. e) podem ser formadas tanto por atributos numéricos, quanto por atributos literais. Resolução: Vamos comentar cada um dos itens: a) Incorreto: uma chave pode ser formada por um único atributo ou por vários atributos. b) Incorreto: as chaves primárias ficam nas próprias tabelas a que se referem. Não existe uma tabela especial para armazenar essas chaves. c) Incorreto: não há necessidade de armazenar chaves em duas tabelas, mas apenas na tabela a que se referem. d) Incorreto: podem ser formadas por nomes próprios. e) Correto: podem ser numéricos ou literais. Gabarito: Letra E. Prof. Ramon Souza
30 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Relacionamentos
Cada elemento de uma tabela se relaciona a um único elemento de outra tabela. Um para Um
(existem apenas logicamente, mas não fisicamente)
(associação entre as tabelas)
Relacioanmentos
(1:1) Em bancos relacionais, uma das tabelas possui a chave estrangeira. Pode-se, porém, mesclar as entidades em uma única tabela ou criar uma terceira tabela para cruzar as chaves primárias destas.
Um para Muitos
Cada elemento de uma tabela r1 pode ser relacionar com mais de um elemento da tabela r2, no entanto cada elemento da tabela r2 está relacionado a apenas um elemento de r1.
(1:N) Em bancos relacionais, a tabela do lado N da relação possui a chave estrangeira.
Para cada valor do campo de uma tabela, pode haver N valores no campo da outra tabela e vice-versa.
Muitos para Muitos (N:M)
Os dados estão diretamente relacionados ao fato (ou ao relacionamento), e não as entidades (ou tabelas).
Em bancos relacionais, esta relação consuma-se através de uma tabela de ligação que pode possuir atributos próprios.
Esquema 20 - Relacionamentos
Prof. Ramon Souza
31 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
9(VUNESP - 2014 - SEDUC-SP - Analista de Tecnologia da Informação) Na modelagem de um banco de dados relacional, considere um conjunto de relacionamentos entre dois conjuntos de entidades A e B. Nesse caso, é necessário especificar, para uma entidade do conjunto A, o número de entidades do conjunto B ao qual essa entidade do conjunto A poderá estar relacionada, e vice-versa. Esse tipo de especificação é denominada: a) atomicidade múltipla. b) cardinalidade de mapeamento c) gerenciamento de transação. d) imposição de normalização e) protocolo de concorrência Resolução: Baseado na cardinalidade dos relacionamentos, isto é, no número de entidades que outra entidade pode se associar via relacionamento, podemos ter os seguintes tipos de relacionamento: ▪ Relacionamento um para um (1:1): neste tipo de relacionamento, cada elemento de uma tabela se relaciona a um único elemento de outra tabela. ▪
Relacionamento um para muitos (1:N): cada elemento de uma tabela r1 pode ser relacionar com mais de um elemento da tabela r2, no entanto cada elemento da tabela r2 está relacionado a apenas um elemento de r1.
▪
Relacionamento muitos para muitos (N:M): neste tipo de relacionamento, para cada valor do campo de uma tabela, pode haver N valores no campo da outra tabela e vice-versa.
Gabarito: Letra B.
Prof. Ramon Souza
32 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
5.
NORMALIZAÇÃO
A normalização de dados pode ser considerada um processo de analisar os esquemas de relação dados com base em suas dependências funcionais e chaves primárias para conseguir as propriedades desejadas e a (1) minimização de redundância e (2) a minimização de anomalias de inserção, exclusão e atualização. A forma normal de uma relação refere-se à condição de forma normal mais alta a que ela atende e, portanto, indica o grau ao qual ela foi normalizada. Vamos sintetizar as formas normais:
1FN
•Todos os atributos são atômicos. •Não possui atributos multivalorados nem compostos.
2FN
•Está na 1FN. •Cada atributo não-chave é dependente da chave primária (ou candidata) inteira. (Dependência funcional total) •Cada atributo não-chave não pode ser dependente de apenas parte da chave.
3FN
•Está na 2FN. •Cada atributo não chave não possui dependência transitiva, para cada chave candidata. •Todos os atributos dependem exclusivamente da chave primária da tabela.
BCFN
4FN
5FN
•Está na 3FN (variação forte da 3FN). •Todo determinante é chave candidata. •Não há dependências entre atributos não chave.
•Está na 3FN. •Não possui dependência multivalorada.
•Está na 4FN. •Não possui dependência de junção.
Esquema 21 – Formas normais.
Prof. Ramon Souza
33 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
10(VUNESP - 2015 - TCE-SP - Agente da Fiscalização Financeira - Sistemas, Gestão de Projetos e Governança de TI) As formas normais estabelecem algumas restrições aos valores das tabelas de um banco de dados relacional. Segundo a definição da primeira forma normal, a) em uma mesma tabela não pode haver atributos com domínios distintos entre si. b) não pode haver mais do que 10 atributos na compo- sição de cada tabela. c) o número de registros com valores nulos em uma tabela deve ser, no máximo, a metade do número de registros dessa tabela. d) o número máximo de caracteres de cada atributo tem um valor limite. e) o valor de um atributo qualquer de um registro de uma tabela deve ser constituído por um único valor do domínio desse atributo. Resolução: Uma tabela está na 1FN se, e somente se, todos os valores das colunas (todos os atributos) forem atômicos. Em outras palavras, uma tabela para estar na 1FN não pode possuir atributos multivalorados nem compostos. ▪
Compostos: podem ser divididos em subpartes menores, que representam atributos mais básicos. O valor é a concatenação de seus componentes atributos simples. Podem formar hierarquia. Ex.: endereço completo com rua, número e cep.
▪
Multivalorado: possui um conjunto de valores para a mesma entidade. Um atributo multivalorado pode possuir um limite mínimo e máximo para restringir o número de valores permitidos. Ex.: telefone que aceita mais de um número.
Gabarito: Letra E.
Prof. Ramon Souza
34 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
6.
QUESTÕES COMENTADAS
Bancos de dados relacionais. 11- (VUNESP - 2016 - MPE-SP - Analista Técnico Científico Engenheiro de Computação) Considerando bancos de dados relacionais, no modelo relacional há os conceitos de chaves candidata, primária e estrangeira, sobre os quais é correto afirmar que uma a) chave estrangeira deve ser criptografada. b) chave estrangeira deve ser do tipo simples (ter apenas um atributo). c) chave primária deve ser do tipo autoincremento. d) chave primária deve ser do tipo composto (ter mais de um atributo). e) relação pode ter mais de uma chave candidata. Resolução: Vamos comentar cada um dos itens: a) Incorreto: chave estrangeira não necessariamente deve ser criptografada. b) Incorreto: chave estrangeira pode ser do tipo simples (ter apenas um atributo) ou do tipo composto (com mais de um atributo). c) Incorreto: chave primária não necessariamente deve ser do tipo autoincremento, embora seja comum adotar atributos deste tipo como chave. d) Incorreto: chave primária pode ser do tipo simples (ter apenas um atributo) ou do tipo composto (com mais de um atributo). e) Correto: relação pode ter mais de uma chave candidata. Em geral, uma relação pode ter mais de uma chave. Nesse caso, cada uma dessas chaves possíveis em uma relação é denominada chave candidata. É possível que diversos conjuntos distintos e atributos possam servir como uma chave candidata, porém, devemos ter em mente que uma chave candidata é uma superchave mínima e, portanto, não deve conter atributos desnecessários. Assim, se um atributo matrícula é uma chave candidata, o conjunto formado por matrícula e nome não é chave candidata, embora seja uma superchave. Gabarito: Letra E.
12- (VUNESP - 2015 - TCE-SP - Agente da Fiscalização Financeira Sistemas, Gestão de Projetos e Governança de TI) Em um banco de dados relacional, a característica que distingue um atributo A como chave estrangeira de uma tabela R é a seguinte: a) a tabela R possui apenas esse atributo A. b) esse atributo A é codificado para maior segurança no acesso à tabela R. c) esse atributo A é a chave primária de outra tabela T. d) esse atributo A sempre possui atributo do tipo numérico. Prof. Ramon Souza
35 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
e) todos os demais atributos de R têm o mesmo domínio que o atributo A Resolução: Uma chave estrangeira é aquela que permite uma ligação lógica entre duas tabelas: a chave estrangeira de uma tabela é um atributo ou conjunto de atributos que se ligam logicamente à chave primária (ou candidata) de outra tabela. Gabarito: Letra C.
13- (VUNESP - 2015 - Câmara Municipal de Caieiras - SP - Assistente Técnico e Gestor de Informação) Em um banco de dados relacional, uma relação R está na segunda forma normal se, além de estar na primeira forma normal, a) a chave primária de R for composta por exatamente dois atributos b) cada atributo não chave de R for funcionalmente dependente de todos atributos da chave primária de R. c) houver pelo menos um atributo de R do tipo literal ou inteiro d) nenhum dos atributos de R for do tipo numérico ou booleano. e) o número total de atributos em R (atributos chave e não chave) for par. Resolução: Uma relação está na 2FN se, e somente se, estiver na 1FN e cada atributo não-chave for dependente da chave primária (ou candidata) inteira, isto é, cada atributo não-chave não poderá ser dependente de apenas parte da chave. Trata-se de uma dependência funcional total. Gabarito: Letra B.
14- (VUNESP - 2014 - SEDUC-SP - Analista de Tecnologia da Informação) Sobre uma tabela de um banco de dados relacional, é correto afirmar que a) tem pelo menos duas chaves primárias. b) pode conter somente um atributo do tipo booleano. c) deve ter, no mínimo, um atributo do tipo numérico. d) sua chave primária deve ser do tipo literal. e) sua chave primária pode ser composta por mais de um atributo. Resolução: Vamos comentar cada um dos itens:
Prof. Ramon Souza
36 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
a) Incorreto: uma tabela possui somente uma chave primária, embora possa ter mais de uma chave candidata. b) Incorreto: não há limitação da quantidade de atributos booleanos ou de quaisquer outros tipos. c) Incorreto: não há necessidade de haver um atributo numérico. d) Incorreto: a chave pode ser de outro tipo, não necessariamente literal. e) Correto: sua chave primária pode ser formada tanto por atributos numéricos quanto por atributos literais. Gabarito: Letra E.
15- (VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas) Em um banco de dados relacional deve haver, em cada uma de suas relações, um conjunto de um ou mais atributos que não admite valores iguais, nesse conjunto, para qualquer par de tuplas da relação. Esse conjunto de atributos tem a seguinte denominação: a) abstração. b) chave primária. c) domínio. d) índice. e) instância. Resolução: O termo chave primária para designar uma chave candidata que é escolhida pelo designer de banco de dados como o principal meio de identificar tuplas dentro de uma relação. Uma chave primária é um conjunto de um ou mais atributos que, coletivamente, nos permitem identificar de forma exclusiva uma tupla na relação. Gabarito: Letra B.
16- (VUNESP - 2014 - PRODEST-ES - Analista de Tecnologia da Informação - Desenvolvimento de Sistemas) Sobre a chave primária de uma tabela de um banco de dados relacional, é correto afirmar que a) pode conter, no máximo, três atributos. b) pode ser composta por mais de um atributo c) não há chave primária em tabelas com até 100 registros. d) não pode conter atributos do tipo textual. e) não pode conter atributos do tipo numérico.
Prof. Ramon Souza
37 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Resolução: O termo chave primária para designar uma chave candidata que é escolhida pelo designer de banco de dados como o principal meio de identificar tuplas dentro de uma relação. Uma chave primária é um conjunto de um ou mais atributos que, coletivamente, nos permitem identificar de forma exclusiva uma tupla na relação. Vamos analisar cada um dos itens: a) Incorreto: não há limitação da quantidade de atributos. b) Correto: pode ser composta por mais de um atributo. c) Incorreto: deve haver chave primária em todas as tabelas. d) Incorreto: pode conter atributos do tipo textual. e) Incorreto: pode conter atributos do tipo numérico. Gabarito: Letra B.
17- (VUNESP - 2014 - PRODEST-ES - Analista de Tecnologia da Informação - Desenvolvimento de Sistemas) Em um banco de dados relacional, uma transação só pode ser considerada confirmada (ter tido sua execução considerada bem sucedida) quando a) alterações de valores de registros decorrentes da transação estiverem na memória RAM do computador. b) alterações de valores de registros decorrentes da transação já tiverem sido transmitidas para um banco de dados remoto. c) alterações de valores de registros decorrentes da transação tiverem sido gravadas no disco do computador d) já tiver sido escalada para execução pelo sistema gerenciador de bancos de dados. e) já tiver sido executada em pelo menos 75% de seus comandos. Resolução: As transações devem possuir quatro propriedades ou princípios básicos, chamadas propriedades ACID, que devem ser impostas pelos métodos de controle de concorrência e recuperação do SGBD. Umas dessas propriedades é a durabilidade, que afirma que as mudanças aplicadas ao banco de dados pela transação confirmada precisam persistir no banco de dados. Gabarito: Letra C.
Prof. Ramon Souza
38 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
18- (VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da Informação) Dentre as propriedades desejadas para uma transação em um banco de dados relacional, está a atomicidade, que estabele-ce que; a) alterações feitas no banco de dados devem ser salvas, em primeiro lugar, no arquivo de histórico (log). b) deve haver um intervalo de tempo mínimo entre a execução de duas transações quaisquer. c) não pode haver a execução simultânea de duas ou mais transações. d) uma transação deve preservar a consistência do banco de dados e) uma transação deve ser executada de modo completo, ou não ter nenhuma de suas ações realizada. Resolução: As transações devem possuir quatro propriedades ou princípios básicos, chamadas propriedades ACID, que devem ser impostas pelos métodos de controle de concorrência e recuperação do SGBD. Umas dessas propriedades é a: ▪
Atomicidade: uma transação é uma unidade de processamento atômica; ela deve ser realizada em sua totalidade ou não deve ser realizada de forma alguma. Assim, a propriedade de atomicidade exige que uma transação seja executada até o fim. Se uma transação não for completada por algum motivo, como uma falha no sistema no meio da execução da transação, a técnica de recuperação precisa desfazer quaisquer efeitos da transação no banco de dados (rollback). Por sua vez, as operações de gravação de uma transação confirmada devem ser, por fim, gravadas no disco (commit). A responsabilidade por garantir essa propriedade é do subsistema de recuperação de transação.
Gabarito: Letra E.
19- (VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da Informação) Na definição de uma tabela de um banco de dados relacional, determinou-se que certo atributo numérico deve estar limitado entre os valores 1 e 25. Essa definição corresponde à indicação de seu(sua); a) visão. b) junção c) domínio. d) integridade. e) chave candidata
Prof. Ramon Souza
39 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Resolução: O tipo de dado que descreve os tipos de valores que podem aparecer em cada coluna é representada por um domínio de valores possíveis. É importante destacar que um domínio é um conjunto de valores atômicos, ou seja, é indivisível. Assim, na tabela da questão, para o atributo só poderão ser representados valores do domínio de números de 1 a 25. Gabarito: Letra C.
20- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Em um banco de dados relacional, o conceito de instância representa o conjunto a) de usuários válidos em determinado momento. b) de valores válidos de cada atributo. c) dos atributos que admitem valores nulos. d) dos dados armazenados em determinado instante. e) dos atributos que formam as chaves primárias de todas as tabelas. Resolução: Aqui vale diferenciar esquema e instância de banco de dados. Um esquema de banco de dados é um esboço de um banco de dados planejado, isto é, representa a estrutura de tabelas do banco, mas sem os dados. Uma instância de um banco de dados é uma “fotografia” do seu esquema em um dado momento no tempo, isto é, representa os dados que estão armazenados em um dado instante. Sendo assim, instâncias de banco de dados podem mudar ao longo do tempo, enquanto um esquema de banco de dados é geralmente estático, já que mudar a estrutura de um banco de dados a partir do momento que estiver operacional é menos comum. Gabarito: Letra D.
Prof. Ramon Souza
40 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
21- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Suponha a seguinte tabela (com todos seus domínios atômicos) de um banco de dados relacional: T (A, B, C, D) Considere, ainda, as seguintes dependências funcionais: A → B,C,D e C → D A maior forma normal em que se encontra essa tabela é: a) primeira forma normal. b) segunda forma normal. c) terceira forma normal. d) quarta forma normal. e) forma normal de Boyce-Codd. Resolução: Questão bem interessante. A questão informa que há uma tabela T com os atributos A, B, C e D. Além disso informa as seguintes dependências: A → B,C,D e C→D Logo, podemos perceber que A é chave da tabela, pois identifica todos os demais atributos. C não pode ser considerado chave, pois determina apenas D. Com base nessas informações vamos avaliar as formas normais: ▪ 1FN: todos os atributos devem ser atômicos, isto é, não podem ser multivalorados ou compostos. O comando da questão informa que todos os domínios da tabela são atômicos, logo esta tabela está na 1FN. ▪ 2FN: os atributos não chave devem depender da totalidade da chave. Como a chave é formada por apenas um atributo, não há dúvida, pois não pode haver dependência de apenas parte da chave. Logo, esta tabela está na 2FN. ▪ 3FN: não pode haver dependência transitiva. Perceba que C determina D, sendo que estes não são chaves da tabela, logo há uma dependência entre atributos não chave da tabela e, portanto, ela não está na 3FN. Em esquema, Se A → C, e C → D, logo A → D de forma transitiva. Logo, esta tabela está na 2FN. Gabarito: Letra B.
Prof. Ramon Souza
41 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
22- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Uma das propriedades que uma transação de um banco de dados relacional deve respeitar é a que estabelece que uma transação deva ser completada até seu término, não sendo admissível implementá-la apenas parcialmente. Essa é a propriedade da a) conexão. b) unicidade. c) dependência. d) atomicidade. e) compatibilidade. Resolução: As transações devem possuir quatro propriedades ou princípios básicos, chamadas propriedades ACID, que devem ser impostas pelos métodos de controle de concorrência e recuperação do SGBD. Umas dessas propriedades é a: ▪
Atomicidade: uma transação é uma unidade de processamento atômica; ela deve ser realizada em sua totalidade ou não deve ser realizada de forma alguma. Assim, a propriedade de atomicidade exige que uma transação seja executada até o fim. Se uma transação não for completada por algum motivo, como uma falha no sistema no meio da execução da transação, a técnica de recuperação precisa desfazer quaisquer efeitos da transação no banco de dados (rollback). Por sua vez, as operações de gravação de uma transação confirmada devem ser, por fim, gravadas no disco (commit). A responsabilidade por garantir essa propriedade é do subsistema de recuperação de transação.
Gabarito: Letra D.
23- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Sobre a chave primária de um banco de dados relacional, é correto afirmar que ela a) deve conter apenas atributos do tipo numérico. b) deve ser formada por dois ou mais atributos. c) não pode conter atributos do tipo caractere. d) pode conter um número máximo de valores nulos equivalente à metade do número total de registros. e) pode ser formada por mais de um atributo.
Prof. Ramon Souza
42 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Resolução: Vamos comentar cada uma das alternativas: a) Incorreto: pode conter vários atributos do tipo numérico. b) Incorreto: pode ser formada por um ou mais atributos. c) Incorreto: pode conter atributos do tipo caractere. d) Incorreto: Os atributos das tuplas da chave devem possuir valores válidos, ou seja, não devem permitir valor NULL. Este cuidado na verdade é uma restrição, a chamada restrição de integridade da entidade. e) Correto: pode ser formada por mais de um atributo (conceito de chave composta). Gabarito: Letra E.
24- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) No projeto lógico de um banco de dados relacional, há os atributos compostos, cuja principal característica é a de que a) contêm apenas valores numéricos. b) devem ser formados por valores binários. c) podem ser divididos em um ou mais atributos. d) são divisíveis em no mínimo três partes. e) têm tamanho mínimo de 50 caracteres. Resolução: Atributos compostos são aqueles que podem ser divididos em subpartes menores, que representam atributos mais básicos. O valor é a concatenação de seus componentes atributos simples. Podem formar hierarquia. Ex.: endereço completo com rua, número e cep. Gabarito: Letra C.
25- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) No projeto lógico de um banco de dados relacional, é importante verificar o nível de normalização das tabelas do banco de dados. Um dos propósitos da normalização é a) evitar redundâncias desnecessárias nas tabelas. b) eliminar todas as chaves primárias das tabelas. c) criptografar os dados mais relevantes do banco de dados. d) obter arquivos adequados ao backup do banco de dados.
Prof. Ramon Souza
43 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
e) transformar todas as tabelas do banco de dados em classes da orientação a objetos. Resolução: A normalização de dados pode ser considerada um processo de analisar os esquemas de relação dados com base em suas dependências funcionais e chaves primárias para conseguir as propriedades desejadas e a (1) minimização de redundância e (2) a minimização de anomalias de inserção, exclusão e atualização. Gabarito: Letra A.
26- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) A estrutura física de um banco de dados relacional que contém metadados sobre a estrutura do banco de dados, por exemplo, dados sobre as tabelas, é chamada de a) dicionário de dados. b) dimensão. c) esquema. d) instância. e) predicado. Resolução: Uma característica fundamental da abordagem de banco de dados é que seu sistema contém não apenas o próprio banco de dados, mas também uma definição ou descrição completa de sua estrutura e restrições, que fica armazenada no catálogo ou dicionário de dados do SGBD. Esse catálogo contém informações como a estrutura de cada arquivo, o tipo e o formato de armazenamento de cada item de dados e diversas restrições sobre os dados. A informação armazenada no catálogo é chamada de metadados, e descreve a estrutura do banco de dados. Gabarito: Letra A.
Prof. Ramon Souza
44 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
27- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Quando é necessário efetuar operações de consulta em, por exemplo, duas tabelas de um banco de dados relacional que tenham uma chave em comum (chave primária/chave estrangeira), a operação a ser realizada é a a) canalização. b) identação. c) junção natural. d) materialização. e) nomeação. Resolução: A operação Junção ( ) seleciona os pares de linhas das duas relações de entrada que têm o mesmo valor em todos os atributos que possuem o mesmo nome. Os atributos repetidos só aparecem uma vez no resultado. Diferentemente da operação de projeção, você seleciona as tabelas de entrada e não os atributos específicos de uma tabela. Em resumo, Operações da álgebra relacional Seleção (σ)
Retorna as tuplas da relação que satisfazem um predicado.
Projeção (П)
Retorna os atributos especificados de todas as linhas da relação de entrada, removendo as tuplas duplicadas da saída.
Junção (
)
Retorna pares de linhas das duas relações de entrada que têm o mesmo valor em todos os atributos que possuem o mesmo nome.
Produto cartesiano (X)
Retorna todos os pares de linhas das duas relações de entrada (independentemente de ter ou não os mesmos valores em atributos comuns).
União (Ս)
Retorna as tuplas que estão na primeira relação, na segunda relação, ou em ambas.
Intersecção (Ո)
Retorna as tuplas que aparecem tanto na primeira relação quanto na segunda.
Diferença (-)
Retorna tuplas que aparecem na primeira relação, mas não estão na segunda.
Gabarito: Letra C.
Prof. Ramon Souza
45 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
28- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Em bancos de dados relacionais há um tipo de atributo cuja condição básica é que duas entidades quaisquer do conjunto de entidades não podem ter o mesmo valor para esse atributo. Esse tipo de atributo recebe a denominação de a) chave estrutural. b) chave primária. c) índice agregado. d) índice de chave. e) retificador. Resolução: O termo chave primária para designar uma chave candidata que é escolhida pelo designer de banco de dados como o principal meio de identificar tuplas dentro de uma relação. Uma chave primária é um conjunto de um ou mais atributos que, coletivamente, nos permitem identificar de forma exclusiva uma tupla na relação. Gabarito: Letra B.
29- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Considere, em um banco de dados relacional, uma tabela R que possui como um de seus atributos a chave primária de outra tabela T. Nesse aspecto, as tabelas R e T são denominadas, respectivamente, a) básica e derivada. b) incompleta e completa. c) permissiva e restritiva. d) principal e secundária. e) referenciadora e referenciada. Resolução: Uma relação (r1) pode incluir entre seus atributos a chave primária (ou candidata) de outra relação (r2). Este atributo é chamado de chave estrangeira de r1, que referencia r2. A relação r1 é chamada de relação que referencia ou referenciadora, e r2 é chamada de relação referenciada da chave estrangeira. É importante destacar que r1 e r2 podem ser a mesma relação e, portanto, podemos ter um auto relacionamento. Gabarito: Letra E.
Prof. Ramon Souza
46 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
30- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Considerando os conceitos de chaves primária e candidata, bem como o conceito de superchave, empregados em bancos de dados relacionais, é correto afirmar que uma a) chave candidata pode conter apenas atributos do tipo numérico. b) chave primária não pode conter atributos do tipo caractere. c) chave primária pode conter apenas um atributo. d) superchave pode ter um maior número de atributos do que uma chave candidata. e) superchave pode ter um menor número de atributos do que uma chave primária. Resolução: Tomemos como base o esquema que resume os conceitos de chaves:
Conjunto de um ou mais atributos que, coletivamente, permitem identificar de forma exclusiva uma tupla.
Chave
Chave candidata
Superchave
Chave primária
Superchave com a propriedade adicional de que a remoção de qualquer dos atributos a faz deixar de ser chave.
Cada uma das chaves possíveis em uma relação.
Chave candidata que é escolhida pelo designer de banco de dados como o principal meio de identificar tuplas.
Chave estrangeira Atributo (s) que são chave primária ou candidata de outra relação.
Vamos comentar cada um dos itens: a) Incorreto: chave candidata pode conter atributos do tipo numérico ou literal. b) Incorreto: chave primária pode conter atributos do tipo caractere. c) Incorreto: chave primária pode conter um ou mais atributos. d) Correto: superchave pode ter um maior número de atributos do que uma chave candidata. e) Incorreto: superchave não pode ter um menor número de atributos do que uma chave primária, pois uma chave primária é uma chave que possui a propriedade de ser uma superchave mínima. Gabarito: Letra D.
Prof. Ramon Souza
47 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
31- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Sistemas) Quando se diz que um domínio de um atributo de uma tabela de um banco de dados relacional é indivisível, equivale a dizer que esse domínio é a) aninhado. b) atômico. c) comutativo. d) distribuído. e) transitivo. Resolução: Cada valor em uma tupla é um valor atômico, isto é, não é divisível em componentes dentro da estrutura do modelo relacional. Gabarito: Letra B.
32- (VUNESP - 2013 - CTA - Tecnologista Pleno - Computação) Considere a seguinte definição de uma das formas normais, utilizadas no projeto de bancos de dados: “Uma tabela está nessa forma normal se, e somente se, cada determinante é uma chave candidata”. Essa definição corresponde à a) primeira forma normal. b) segunda forma normal. c) terceira forma normal. d) quarta forma normal. e) forma normal de Boyce-Codd. Resolução: Uma tabela está na Forma Normal de Boyce-Codd (FNBC ou BCNF) se, e somente se, estiver na 3FN e todo determinante é chave candidata. Dessa forma, não há dependências entre atributos não chave. É considerada uma variação forte da 3FN. Gabarito: Letra E.
Prof. Ramon Souza
48 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
33- (VUNESP - 2013 - CTA - Tecnologista Pleno - Computação) No projeto de um banco de dados relacional é necessário especificar o domínio dos atributos das tabelas. Por domínio entende-se como sendo o a) tipo de dados para cada atributo. b) número máximo de valores distintos de um atributo. c) tamanho máximo permitido para cada atributo. d) conjunto dos valores permitidos para um atributo. e) tipo de consulta permitida para um atributo. Resolução: O tipo de dado que descreve os tipos de valores que podem aparecer em cada coluna é representada por um domínio de valores possíveis. É importante destacar que um domínio é um conjunto de valores atômicos, ou seja, é indivisível. Gabarito: Letra D.
34- (VUNESP - 2012 - TJ-SP - Analista de Sistemas) A operação da álgebra relacional que possibilita escolher quais colunas ou atributos de uma tabela devem ser exibidos em uma consulta é o(a) a) união. b) junção. c) seleção. d) projeção. e) produto cartesiano. Resolução: A operação Projeção (П) seleciona os atributos especificados de todas as linhas da relação de entrada, removendo as tuplas duplicadas da saída. Em resumo, Operações da álgebra relacional Seleção (σ)
Retorna as tuplas da relação que satisfazem um predicado.
Projeção (П)
Retorna os atributos especificados de todas as linhas da relação de entrada, removendo as tuplas duplicadas da saída.
Junção (
)
Retorna pares de linhas das duas relações de entrada que têm o mesmo valor em todos os atributos que possuem o mesmo nome.
Produto cartesiano (X)
Retorna todos os pares de linhas das duas relações de entrada (independentemente de ter ou não os mesmos valores em atributos comuns).
Prof. Ramon Souza
49 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
União (Ս)
Retorna as tuplas que estão na primeira relação, na segunda relação, ou em ambas.
Intersecção (Ո)
Retorna as tuplas que aparecem tanto na primeira relação quanto na segunda.
Diferença (-)
Retorna tuplas que aparecem na primeira relação, mas não estão na segunda.
Gabarito: Letra D.
35- (VUNESP - 2011 - CREMESP - Administrador de Banco de Dados) Considerando o modelo relacional para bancos de dados, uma relação R está na primeira forma normal se a) tiver apenas valores numéricos. b) tiver no máximo duas chaves candidatas. c) não contiver valores booleanos. d) não tiver chave primária composta. e) os domínios de todos os atributos de R forem atômicos. Resolução: Uma tabela está na Primeira Forma Normal (1FN) se, e somente se, todos os valores das colunas (todos os atributos) forem atômicos. Em outras palavras, uma tabela para estar na 1FN não pode possuir atributos multivalorados nem compostos. ▪
Compostos: podem ser divididos em subpartes menores, que representam atributos mais básicos. O valor é a concatenação de seus componentes atributos simples. Podem formar hierarquia. Ex.: endereço completo com rua, número e cep.
▪
Multivalorado: possui um conjunto de valores para a mesma entidade. Um atributo multivalorado pode possuir um limite mínimo e máximo para restringir o número de valores permitidos. Ex.: telefone que aceita mais de um número.
Gabarito: Letra E.
Caderno de Questões Sobre o Tema O caderno referente ao https://bit.ly/2GD5RZf.
assunto
desta
aula
pode
Prof. Ramon Souza
ser
acessado
em
50 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
7.
LISTAS DE EXERCÍCIOS
Questões comentadas durante a aula 1(VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas) Há 4 propriedades básicas que uma transação de um banco de dados relacional deve respeitar. Assinale a alternativa que contém duas dessas propriedades. a) Atomicidade e isolamento. b) Consistência e normalização. c) Durabilidade e paralelismo. d) Normalização e atomicidade. e) Paralelismo e isolamento.
2- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Segundo o conceito de abstração de dados empregado em bancos de dados relacionais, é correto afirmar que a) esse conceito não se aplica a bancos de dados distribuídos. b) não se admite a concorrência de usuários, de forma simultânea. c) não se admitem valores nulos em suas tabelas. d) seus usuários finais têm acesso a todos os níveis de abstração de dados. e) seus usuários finais não têm acesso ao nível físico de armazenamento dos dados.
3- (VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da Informação) Assinale a alternativa que apresenta uma afirmação verdadeira sobre o modelo hierárquico de bancos de dados; a) Cada registro, exceto a raiz, participa como filho em pelo menos dois relacionamentos pai-filho. b) Cada registro, exceto a raiz, participa como filho em exatamente um relacionamento pai-filho. c) O registro denominado raiz participa como filho em pelo menos um relacionamento pai-filho. d) O registro denominado raiz participa como filho em, no máximo, dois relacionamentos pai-filho. e) Todo registro que participa como pai em um relaciona- mento pai-filho é chamado de folha.
Prof. Ramon Souza
51 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
4- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Além de armazenar dados em tabelas, um banco de dados relacional armazena também informações sobre essas tabelas, tais como seus nomes e atributos. Essas informações são armazenadas no(a) chamado(a) a) algoritmo de busca. b) bloqueio granular. c) catálogo do sistema. d) índice generalizado. e) rede de relacionamentos.
5- (VUNESP - 2014 - SEDUC-SP - Analista de Tecnologia da Informação) Muitas vezes, não inserimos o valor em um campo de um registro de um banco de dados relacional, por não dispor desse valor ou por não conhecê-lo. Nesse caso, essa ausência de valor é chamada de valor. a) chave. b) coringa. c) morto. d) nulo. e) zero.
6- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Dentre os diversos tipos de operações disponibilizadas em um banco de dados relacional está, por exemplo, a realização de consultas sobre valores armazenados em tabelas. A operação que consiste em definir quais devem ser as colunas a serem exibidas em uma consulta é a a) divisão. b) multiplexação. c) projeção. d) seleção. e) união.
Prof. Ramon Souza
52 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
7- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Uma das decisões a serem tomadas no projeto físico de um banco de dados relacional é a criação de estruturas que possibilitem a obtenção mais rápida dos dados das consultas. Tal estrutura é composta pelos (pelas) a) logs. b) índices. c) gatilhos. d) privilégios. e) permissões.
8- (VUNESP - 2017 - TJM-SP - Técnico de Comunicação e Processamento de Dados) Um dos conceitos básicos da modelagem de bancos de dados relacionais são as chaves primárias, sobre as quais, é correto afirmar que a) devem ser compostas por, pelo menos, dois atributos. b) em cada banco de dados deve haver uma tabela que armazena as chaves primárias de todas as demais tabelas. c) devem ser armazenadas, de forma redundante, em pelo menos duas tabelas distintas do banco de dados. d) não podem ser formadas por nomes próprios. e) podem ser formadas tanto por atributos numéricos, quanto por atributos literais.
9- (VUNESP - 2014 - SEDUC-SP - Analista de Tecnologia da Informação) Na modelagem de um banco de dados relacional, considere um conjunto de relacionamentos entre dois conjuntos de entidades A e B. Nesse caso, é necessário especificar, para uma entidade do conjunto A, o número de entidades do conjunto B ao qual essa entidade do conjunto A poderá estar relacionada, e vice-versa. Esse tipo de especificação é denominada: a) atomicidade múltipla. b) cardinalidade de mapeamento c) gerenciamento de transação. d) imposição de normalização e) protocolo de concorrência
Prof. Ramon Souza
53 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
10- (VUNESP - 2015 - TCE-SP - Agente da Fiscalização Financeira Sistemas, Gestão de Projetos e Governança de TI) As formas normais estabelecem algumas restrições aos valores das tabelas de um banco de dados relacional. Segundo a definição da primeira forma normal, a) em uma mesma tabela não pode haver atributos com domínios distintos entre si. b) não pode haver mais do que 10 atributos na compo- sição de cada tabela. c) o número de registros com valores nulos em uma tabela deve ser, no máximo, a metade do número de registros dessa tabela. d) o número máximo de caracteres de cada atributo tem um valor limite. e) o valor de um atributo qualquer de um registro de uma tabela deve ser constituído por um único valor do domínio desse atributo.
Prof. Ramon Souza
54 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
Bancos de dados relacionais 11- (VUNESP - 2016 - MPE-SP - Analista Técnico Científico Engenheiro de Computação) Considerando bancos de dados relacionais, no modelo relacional há os conceitos de chaves candidata, primária e estrangeira, sobre os quais é correto afirmar que uma a) chave estrangeira deve ser criptografada. b) chave estrangeira deve ser do tipo simples (ter apenas um atributo). c) chave primária deve ser do tipo autoincremento. d) chave primária deve ser do tipo composto (ter mais de um atributo). e) relação pode ter mais de uma chave candidata.
12- (VUNESP - 2015 - TCE-SP - Agente da Fiscalização Financeira Sistemas, Gestão de Projetos e Governança de TI) Em um banco de dados relacional, a característica que distingue um atributo A como chave estrangeira de uma tabela R é a seguinte: a) a tabela R possui apenas esse atributo A. b) esse atributo A é codificado para maior segurança no acesso à tabela R. c) esse atributo A é a chave primária de outra tabela T. d) esse atributo A sempre possui atributo do tipo numérico. e) todos os demais atributos de R têm o mesmo domínio que o atributo A
13- (VUNESP - 2015 - Câmara Municipal de Caieiras - SP - Assistente Técnico e Gestor de Informação) Em um banco de dados relacional, uma relação R está na segunda forma normal se, além de estar na primeira forma normal, a) a chave primária de R for composta por exatamente dois atributos b) cada atributo não chave de R for funcionalmente dependente de todos atributos da chave primária de R. c) houver pelo menos um atributo de R do tipo literal ou inteiro d) nenhum dos atributos de R for do tipo numérico ou booleano. e) o número total de atributos em R (atributos chave e não chave) for par.
14- (VUNESP - 2014 - SEDUC-SP - Analista de Tecnologia da Informação) Sobre uma tabela de um banco de dados relacional, é correto afirmar que a) tem pelo menos duas chaves primárias.
Prof. Ramon Souza
55 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
b) pode conter somente um atributo do tipo booleano. c) deve ter, no mínimo, um atributo do tipo numérico. d) sua chave primária deve ser do tipo literal. e) sua chave primária pode ser composta por mais de um atributo.
15- (VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas) Em um banco de dados relacional deve haver, em cada uma de suas relações, um conjunto de um ou mais atributos que não admite valores iguais, nesse conjunto, para qualquer par de tuplas da relação. Esse conjunto de atributos tem a seguinte denominação: a) abstração. b) chave primária. c) domínio. d) índice. e) instância.
16- (VUNESP - 2014 - PRODEST-ES - Analista de Tecnologia da Informação - Desenvolvimento de Sistemas) Sobre a chave primária de uma tabela de um banco de dados relacional, é correto afirmar que a) pode conter, no máximo, três atributos. b) pode ser composta por mais de um atributo c) não há chave primária em tabelas com até 100 registros. d) não pode conter atributos do tipo textual. e) não pode conter atributos do tipo numérico.
17- (VUNESP - 2014 - PRODEST-ES - Analista de Tecnologia da Informação - Desenvolvimento de Sistemas) Em um banco de dados relacional, uma transação só pode ser considerada confirmada (ter tido sua execução considerada bem sucedida) quando a) alterações de valores de registros decorrentes da transação estiverem na memória RAM do computador. b) alterações de valores de registros decorrentes da transação já tiverem sido transmitidas para um banco de dados remoto. c) alterações de valores de registros decorrentes da transação tiverem sido gravadas no disco do computador
Prof. Ramon Souza
56 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
d) já tiver sido escalada para execução pelo sistema gerenciador de bancos de dados. e) já tiver sido executada em pelo menos 75% de seus comandos.
18- (VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da Informação) Dentre as propriedades desejadas para uma transação em um banco de dados relacional, está a atomicidade, que estabele-ce que; a) alterações feitas no banco de dados devem ser salvas, em primeiro lugar, no arquivo de histórico (log). b) deve haver um intervalo de tempo mínimo entre a execução de duas transações quaisquer. c) não pode haver a execução simultânea de duas ou mais transações. d) uma transação deve preservar a consistência do banco de dados e) uma transação deve ser executada de modo completo, ou não ter nenhuma de suas ações realizada.
19- (VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da Informação) Na definição de uma tabela de um banco de dados relacional, determinou-se que certo atributo numérico deve estar limitado entre os valores 1 e 25. Essa definição corresponde à indicação de seu(sua); a) visão. b) junção c) domínio. d) integridade. e) chave candidata
20- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Em um banco de dados relacional, o conceito de instância representa o conjunto a) de usuários válidos em determinado momento. b) de valores válidos de cada atributo. c) dos atributos que admitem valores nulos. d) dos dados armazenados em determinado instante. e) dos atributos que formam as chaves primárias de todas as tabelas.
Prof. Ramon Souza
57 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
21- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Suponha a seguinte tabela (com todos seus domínios atômicos) de um banco de dados relacional: T (A, B, C, D) Considere, ainda, as seguintes dependências funcionais: A → B,C,D e C → D A maior forma normal em que se encontra essa tabela é: a) primeira forma normal. b) segunda forma normal. c) terceira forma normal. d) quarta forma normal. e) forma normal de Boyce-Codd. 22- (VUNESP - 2013 - COREN-SP - Administrador de Banco de Dados) Uma das propriedades que uma transação de um banco de dados relacional deve respeitar é a que estabelece que uma transação deva ser completada até seu término, não sendo admissível implementá-la apenas parcialmente. Essa é a propriedade da a) conexão. b) unicidade. c) dependência. d) atomicidade. e) compatibilidade.
23- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Sobre a chave primária de um banco de dados relacional, é correto afirmar que ela a) deve conter apenas atributos do tipo numérico. b) deve ser formada por dois ou mais atributos. c) não pode conter atributos do tipo caractere. d) pode conter um número máximo de valores nulos equivalente à metade do número total de registros. e) pode ser formada por mais de um atributo.
Prof. Ramon Souza
58 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
24- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) No projeto lógico de um banco de dados relacional, há os atributos compostos, cuja principal característica é a de que a) contêm apenas valores numéricos. b) devem ser formados por valores binários. c) podem ser divididos em um ou mais atributos. d) são divisíveis em no mínimo três partes. e) têm tamanho mínimo de 50 caracteres.
25- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) No projeto lógico de um banco de dados relacional, é importante verificar o nível de normalização das tabelas do banco de dados. Um dos propósitos da normalização é a) evitar redundâncias desnecessárias nas tabelas. b) eliminar todas as chaves primárias das tabelas. c) criptografar os dados mais relevantes do banco de dados. d) obter arquivos adequados ao backup do banco de dados. e) transformar todas as tabelas do banco de dados em classes da orientação a objetos.
26- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) A estrutura física de um banco de dados relacional que contém metadados sobre a estrutura do banco de dados, por exemplo, dados sobre as tabelas, é chamada de a) dicionário de dados. b) dimensão. c) esquema. d) instância. e) predicado.
27- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Quando é necessário efetuar operações de consulta em, por exemplo, duas tabelas de um banco de dados relacional que tenham uma chave em comum (chave primária/chave estrangeira), a operação a ser realizada é a a) canalização. b) identação. Prof. Ramon Souza
59 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
c) junção natural. d) materialização. e) nomeação.
28- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Em bancos de dados relacionais há um tipo de atributo cuja condição básica é que duas entidades quaisquer do conjunto de entidades não podem ter o mesmo valor para esse atributo. Esse tipo de atributo recebe a denominação de a) chave estrutural. b) chave primária. c) índice agregado. d) índice de chave. e) retificador.
29- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Considere, em um banco de dados relacional, uma tabela R que possui como um de seus atributos a chave primária de outra tabela T. Nesse aspecto, as tabelas R e T são denominadas, respectivamente, a) básica e derivada. b) incompleta e completa. c) permissiva e restritiva. d) principal e secundária. e) referenciadora e referenciada.
30- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Banco de Dados) Considerando os conceitos de chaves primária e candidata, bem como o conceito de superchave, empregados em bancos de dados relacionais, é correto afirmar que uma a) chave candidata pode conter apenas atributos do tipo numérico. b) chave primária não pode conter atributos do tipo caractere. c) chave primária pode conter apenas um atributo. d) superchave pode ter um maior número de atributos do que uma chave candidata. e) superchave pode ter um menor número de atributos do que uma chave primária.
Prof. Ramon Souza
60 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
31- (VUNESP - 2013 - MPE-ES - Agente Especializado - Analista de Sistemas) Quando se diz que um domínio de um atributo de uma tabela de um banco de dados relacional é indivisível, equivale a dizer que esse domínio é a) aninhado. b) atômico. c) comutativo. d) distribuído. e) transitivo.
32- (VUNESP - 2013 - CTA - Tecnologista Pleno - Computação) Considere a seguinte definição de uma das formas normais, utilizadas no projeto de bancos de dados: “Uma tabela está nessa forma normal se, e somente se, cada determinante é uma chave candidata”. Essa definição corresponde à a) primeira forma normal. b) segunda forma normal. c) terceira forma normal. d) quarta forma normal. e) forma normal de Boyce-Codd. 33- (VUNESP - 2013 - CTA - Tecnologista Pleno - Computação) No projeto de um banco de dados relacional é necessário especificar o domínio dos atributos das tabelas. Por domínio entende-se como sendo o a) tipo de dados para cada atributo. b) número máximo de valores distintos de um atributo. c) tamanho máximo permitido para cada atributo. d) conjunto dos valores permitidos para um atributo. e) tipo de consulta permitida para um atributo.
34- (VUNESP - 2012 - TJ-SP - Analista de Sistemas) A operação da álgebra relacional que possibilita escolher quais colunas ou atributos de uma tabela devem ser exibidos em uma consulta é o(a) a) união. b) junção. c) seleção. Prof. Ramon Souza
61 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
d) projeção. e) produto cartesiano.
35- (VUNESP - 2011 - CREMESP - Administrador de Banco de Dados) Considerando o modelo relacional para bancos de dados, uma relação R está na primeira forma normal se a) tiver apenas valores numéricos. b) tiver no máximo duas chaves candidatas. c) não contiver valores booleanos. d) não tiver chave primária composta. e) os domínios de todos os atributos de R forem atômicos.
Caderno de Questões Sobre o Tema O caderno referente ao https://bit.ly/2GD5RZf.
assunto
desta
aula
pode
Prof. Ramon Souza
ser
acessado
em
62 de 63
www.exponencialconcursos.com.br
Curso: TI para ISS Guarulhos Resumo + Questões comentadas Prof. Ramon Souza
8.
GABARITO
1
A
11
E
21
B
31
B
2
E
12
C
22
D
32
E
3
B
13
B
23
E
33
D
4
C
14
E
24
C
34
D
5
D
15
B
25
A
35
E
6
C
16
B
26
A
7
B
17
C
27
C
8
E
18
E
28
B
9
B
19
C
29
E
10
E
20
D
30
D
9.
REFERÊNCIAS
BATTISTI, Julio. O Modelo Relacional de Dados. Disponível em: https://juliobattisti.com.br/artigos/office/modelorelacional_p2.asp. Acesso em: 14 nov. 2017. DATE, Christopher J. Introdução a sistemas de bancos de dados. Rio de Janeiro: Elsevier Brasil, 2003. ELMASRI, Ramez; NAVATHE, Shamkant B. Sistema de Banco de Dados. 6ed. São Paulo: Pearson Addison Wesley, 2011. SYLBERCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Database System Concepts. 6th. New York: McGraw-Hill, 2011. SOFTBLUE. Curso SQL Completo.
Prof. Ramon Souza
63 de 63
www.exponencialconcursos.com.br