Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

<p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI)</p><p>Banco de Dados</p><p>Autor:</p><p>Thiago Rodrigues Cavalcanti</p><p>06 de Julho de 2024</p><p>39471799600 - Naldira Luiza Vieria</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Índice</p><p>..............................................................................................................................................................................................1) Implementação de SGDs Relacionais 3</p><p>..............................................................................................................................................................................................2) Visões 19</p><p>..............................................................................................................................................................................................3) Restrições de Integridade. 29</p><p>..............................................................................................................................................................................................4) Regras de CODD. 32</p><p>..............................................................................................................................................................................................5) Álgebra Relacional. 37</p><p>..............................................................................................................................................................................................6) Normalização. 53</p><p>..............................................................................................................................................................................................7) Quarta e Quinta Formas Normais. 69</p><p>..............................................................................................................................................................................................8) Questões Comentadas - Modelo Relacional - CEBRASPE 74</p><p>..............................................................................................................................................................................................9) Questões Comentadas - Modelo Relacional - CESGRANRIO 105</p><p>..............................................................................................................................................................................................10) Questões Comentadas - Modelo Relacional - FGV 160</p><p>..............................................................................................................................................................................................11) Questões Comentadas - Modelo Relacional - Vunesp 216</p><p>..............................................................................................................................................................................................12) Lista de Questões - Modelo Relacional - CEBRASPE 228</p><p>..............................................................................................................................................................................................13) Lista de Questões - Modelo Relacional - CESGRANRIO 240</p><p>..............................................................................................................................................................................................14) lista de Questões - Modelo Relacional - FGV 279</p><p>..............................................................................................................................................................................................15) Lista de Questões - Modelo Relacional - Vunesp 313</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>2</p><p>321</p><p>IMPLEMENTAÇÃO DE SGBDS RELACIONAIS</p><p>Objetivos da Aula</p><p>CONCEITOS BÁSICOS</p><p>Já sabemos que um banco de dados é uma coleção de dados persistentes que podem ser</p><p>compartilhados e estar inter-relacionados. Ou seja, os dados são armazenados de modo</p><p>permanente, como em um disco magnético. Ele também pode ter múltiplas aplicações e</p><p>usuários, fazendo acesso aos dados armazenados. Tais dados são vistos como unidades</p><p>separadas e podem ser ligados para fornecer um quadro completo.</p><p>Os sistemas de banco de dados relacionais foram desenvolvidos originalmente por causa da</p><p>familiaridade e simplicidade. Como as tabelas são utilizadas para comunicar ideias em vários</p><p>campos do conhecimento, a terminologia de tabelas, linhas e colunas é facilmente</p><p>compreendida por diferentes usuários. No modelo, tanto os dados quanto os relacionamentos</p><p>são representados em tabelas ou relações.</p><p>Além da familiaridade e simplicidade dos bancos de dados relacionais, há também uma sólida</p><p>base matemática. A matemática dos bancos de dados relacionais implica a conceitualização de</p><p>tabelas como conjuntos. O modelo tem uma base formal sólida, que está estruturada na teoria</p><p>dos conjuntos e na lógica de primeira ordem.</p><p>A combinação de familiaridade e simplicidade com a base matemática é tão</p><p>poderosa, que os SGBDs relacionais são líderes no mercado de</p><p>armazenamento de dados operacionais.</p><p>Edgar Frank Codd (o rapaz fumando um charuto cubano na figura ao lado)</p><p>foi um matemático britânico que desenvolveu o modelo de banco de dados</p><p>relacional quando era pesquisador da IBM em San José – Califórnia. É</p><p>interessante que a IBM não quis implementar as ideias de Codd inicialmente.</p><p>A empresa tinha uma linha de produtos, em especial o IMS/DB, e não queria</p><p>perder faturamento. O IMS/DB era um SGBD que não utilizava o modelo</p><p>relacional como fundamento teórico. A IBM tinha um grande volume de receitas advindas</p><p>deste produto. Assim, não queria perder espaço neste mercado, mesmo que fosse para ela</p><p>mesma. Mas o que Codd propôs que seria tão revolucionário?</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>3</p><p>321</p><p>Para responder a essa pergunta, vamos iniciar com uma definição informal do modelo. O</p><p>modelo relacional é constantemente descrito como tendo os três aspectos a seguir:</p><p>Ok! Vamos sair do texto puro e observar uma figura. Ela vai nos ajudar a entender esses</p><p>conceitos de forma bem mais tranquila. Veja a figura abaixo:</p><p>Figura 1 - Aspecto estrutural, de integridade e manipulador do modelo</p><p>O modelo relacional é um modelo de dado representativo (ou de implementação). Como um</p><p>modelo, ele procura abstrair e organizar os dados de um banco de dados. Para isso, o modelo</p><p>relacional define um conjunto de conceitos para representação dos dados. O elemento básico</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>4</p><p>321</p><p>deste modelo está definido pelo conceito de relação. Um banco de dados seria, portanto, um</p><p>conjunto de relações. Cada relação pode ser vista como uma tabela. Assim, os SGBDs</p><p>relacionais devem representar os dados sob a forma de tabelas bidimensionais organizadas em</p><p>linhas e colunas.</p><p>Observe que os sistemas relacionais só exigem que o banco de dados seja percebido pelo</p><p>usuário como tabelas. As tabelas são a estrutura lógica em um sistema relacional, não a</p><p>estrutura física. No nível físico, os dados podem ser organizados em outros tipos de estrutura –</p><p>usando arquivos sequenciais, indexação, hashing, cadeias de ponteiros, etc. – desde que ele</p><p>possa mapear essa representação armazenada como tabelas no nível lógico. Isso é um reflexo</p><p>da abstração provida pelo modelo relacional.</p><p>O termo "estrutura lógica" pretende englobar os níveis conceitual e externo da arquitetura</p><p>ANSI/SPARC. O detalhe é que os níveis conceitual e externo em um sistema relacional serão</p><p>representados usando o modelo relacional. Os bancos de dados relacionais satisfazem a um</p><p>princípio muito interessante, chamado Princípio da Informação:</p><p>Veja que os valores são armazenados em uma</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>39</p><p>321</p><p>Sobre a taxonomia, é importante lembrar que temos um conjunto de operações conhecidas</p><p>como fundamentais. São elas: seleção, projeção, união, diferença, produto cartesiano</p><p>e rename. Essas operações possuem esse nome, pois a partir delas é possível obter o</p><p>resultado das demais operações.</p><p>Outra classificação importante é a classificação das operações em binárias e unárias (ou</p><p>primárias). Esse parâmetro está baseado na quantidade de relações que são utilizadas nas</p><p>operações. As operações de projeção, seleção e rename são unárias. As operações de</p><p>união, interseção, subtração, produto cartesiano, junção e divisão são binárias.</p><p>SELEÇÃO</p><p>O objetivo dessa operação, que recebe como entrada uma única tabela ou relação, é</p><p>selecionar um conjunto de tuplas que satisfaçam um predicado (uma condição lógica) nos</p><p>valores dos atributos. Em outras palavras, vamos extrair de uma relação um conjunto de</p><p>linhas que possuem algumas restrições. Por exemplo, funcionários que possuem salário</p><p>maior que 10 mil reais. Vamos procurar entender melhor o que a operação faz exatamente</p><p>com outro exemplo. Vejam a tabela abaixo:</p><p>Queremos executar uma operação de seleção sobre esta tabela. Vamos então fazer uma</p><p>consulta de quais grupos de países ou parte do mundo apresentam mais de 10% da</p><p>distribuição de petróleo. Olhando para a tabela, já poderíamos trazer os valores América</p><p>Latina e Oriente Médio. Mas existe uma notação específica, definida pela álgebra relacional,</p><p>para fazer essa consulta. Essa notação pode ser vista abaixo: σ LISTA DE CONDIÇÕES (RELAÇÃO)</p><p>-- SELECIONA LINHAS QUE SATISFAZEM UM PREDICADO OU UMA CONDIÇÃO --</p><p>A letra grega σ (sigma) representa a operação de seleção, que é feita sobre a relação R,</p><p>restringindo as linhas de acordo com as restrições descritas pelo predicado (lista de</p><p>condições). Sobre esse predicado, é preciso tecer alguns comentários. Primeiramente, é</p><p>perfeitamente possível que ele seja uma composição de restrições sobre diferentes colunas</p><p>da tabela.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>40</p><p>321</p><p>Cada restrição é conhecida como termo. Os termos podem ser ligados por conectivos ∧ (e), ∨ (ou), ¬ (não). Cada termo pode ser composto por:</p><p>operador ou operador</p><p>Ex: NomeCandidato = NomeAprovado || NomeAprovado = _____________</p><p>No exemplo acima preciso que você imagine que NomeCandidato e NomeAprovado são</p><p>atributos de uma relação. Veja que seu nome é uma constante ou um valor. Por fim, a lista</p><p>de operadores é formada por =, ≠, >, ≥, = 10>(PETROLEOREGIAO)</p><p>Observe, na consulta acima, que o predicado = 10> é definido sobre</p><p>um atributo da tabela PETROLEOREGIAO.</p><p>Vejamos mais um exemplo da operação, desta vez vamos utilizar uma tabela com a lista de</p><p>professores do Estratégia Concursos. A operação abaixo:</p><p>Sobre a tabela:</p><p>Retorna os seguintes valores:</p><p>Preencha com</p><p>seu nome.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>41</p><p>321</p><p>PROJEÇÃO</p><p>π LISTA DE ATRIBUTOS (RELAÇÃO)</p><p>-- PROJETA UMA NOVA TABELA APENAS COM OS ATRIBUTOS ESPECIFICADOS --</p><p>Agora vamos passar para a projeção. Essa operação, também, recebe como entrada uma</p><p>relação. Contudo, suas restrições são feitas sobre as colunas da tabela. Essa operação</p><p>deixa algumas colunas de fora do resultado, reduzindo, portanto, a quantidade de dados a</p><p>serem analisados. Usando o mesmo exemplo anterior, vamos supor que queremos as</p><p>informações apenas da distribuição de petróleo no mundo e das regiões. Bastaria recortar</p><p>a tabela excluindo a coluna que informa a distribuição de gás.</p><p>Da mesma maneira que a operação anterior, apresentaremos agora a representação formal</p><p>da projeção:</p><p>A letra grega π (pi) representa a operação. A1, A2, ..., Ak são a lista de atributos da relação</p><p>R que queremos trazer como resultado. Para fazermos a consulta utilizando a nomenclatura</p><p>correta, podemos escrevê-la da seguinte forma:</p><p>π(PETROLEOREGIAO)</p><p>Ainda sobre a essa operação, consideramos relevante saber que os resultados duplicados</p><p>são removidos.</p><p>Vejamos mais um exemplo considerando a lista de professores do Estratégia Concursos.</p><p>Imaginem que desejamos projetar uma nova tabela apenas com o Nome e CPF dos</p><p>professores. Para tal, nós poderíamos realizar a seguinte operação algébrica: π nome professor,</p><p>cpf (PROFESSOR).</p><p>TABELA PROFESSOR</p><p>NOME</p><p>PROFESSOR</p><p>CPF IDADE NOME DISCIPLINA NATURALIDADE</p><p>DIEGO</p><p>CARVALHO</p><p>111.111.111-11 21 INFORMÁTICA DISTRITO FEDERAL</p><p>RENATO DA</p><p>COSTA</p><p>222.222.222-22 54 INFORMÁTICA RIO DE JANEIRO</p><p>RICARDO VALE 333.333.333-33 40 DIREITO CONSTITUCIONAL MINAS GERAIS</p><p>ROSENVAL</p><p>JÚNIOR</p><p>444.444.444-44 32 DIREITO AMBIENTAL Minas gerais</p><p>HERBERT</p><p>ALMEIDA</p><p>555.555.555-55 19 DIREITO ADMINISTRATIVO Espírito santo</p><p>resultado</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>42</p><p>321</p><p>NOME</p><p>PROFESSOR</p><p>CPF</p><p>DIEGO</p><p>CARVALHO</p><p>111.111.111-</p><p>11</p><p>RENATO DA</p><p>COSTA</p><p>222.222.222-</p><p>22</p><p>RICARDO</p><p>VALE</p><p>333.333.333-</p><p>33</p><p>ROSENVAL</p><p>JÚNIOR</p><p>444.444.444-</p><p>44</p><p>HERBERT</p><p>ALMEIDA</p><p>555.555.555-</p><p>55</p><p>(VUNESP – MPE/ES – Agente Especializado) Dentre os diversos tipos de operações</p><p>disponibilizadas em um banco de dados relacional está, por exemplo, a realização de</p><p>consultas sobre valores armazenados em tabelas. A operação que consiste em definir</p><p>quais devem ser as colunas a serem exibidas em uma consulta é a</p><p>a) divisão.</p><p>b) multiplexação.</p><p>c) projeção.</p><p>d) seleção.</p><p>e) união.</p><p>_______________________</p><p>Comentários: conforme vimos em aula, definir as colunas que devem ser exibidas é uma Projeção (Letra C).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>43</p><p>321</p><p>RENAME (RENOMEAÇÃO)</p><p>Para entender a definição da função rename, podemos começar entendendo a sua</p><p>funcionalidade. A primeira seria unificar em um único conjunto duas listas diferentes.</p><p>Imaginem duas tabelas: uma com a lista de escolas e outra, das universidades. Se</p><p>quiséssemos juntar os nomes das instituições de ensino, poderíamos fazer uma união</p><p>(falaremos sobre a operação nas próximas linhas) dos nomes das escolas com os nomes</p><p>das universidades. Contudo, se precisarmos usar esse resultado mais adiante, qual o nome</p><p>da nova relação e dos atributos? Temos, portanto, que renomear o resultset.</p><p>O segundo uso do rename seria para reduzir ambiguidade em “selfjoin´s”. Quando</p><p>fazemos um join da tabela com ela mesma e queremos comparar os atributos do resultado,</p><p>precisamos renomear as tabelas para que essa comparação possa ser feita. Se você se</p><p>lembrar de SQL, a linguagem implementa alias sobre as tabelas, e uma das funções desse</p><p>alias1 é justamente resolver essa ambiguidade. Em suma, o alias é uma implementação do</p><p>conceito de rename.</p><p>A representação formal da operação de rename é feita da pela letra grega ρ (rho) e é</p><p>aplicada sobre uma relação. Veja abaixo:</p><p>ρx(E)</p><p>O x representa o novo nome dado para a relação (E) e A1, A2, ..., An representam os</p><p>novos nomes dados para os atributos da relação. A1 se refere ao primeiro atributo da</p><p>relação,</p><p>A2 ao segundo e assim sucessivamente. Suponha uma relação STUDENT (NAME,</p><p>PHONE). Podemos usar o comando de rename da seguinte forma:</p><p>ρestudante(STUDENT)</p><p>Você poderia, ainda, atribuir o resultado acima a outra relação, usando o comando de</p><p>assignment (). Assim, poderíamos atribuir o resultado anterior a uma variável, por</p><p>exemplo:</p><p>temp  ρestudante(STUDENT)</p><p>As próximas quatro operações são conhecidas como operações de conjuntos. Vamos</p><p>analisar cada uma delas.</p><p>UNIÃO</p><p>TABELA A ⋃ TABELA B</p><p>-- RESULTA NA UNIÃO DAS LINHAS DE DUAS TABELAS COM ELIMINAÇÃO AUTOMÁTICA DE DUPLICATAS --</p><p>1 Alias são usados para fornecer um nome temporário a uma tabela ou uma coluna em uma tabela. Os</p><p>alias costumam ser usados para tornar os nomes das colunas mais legíveis e existem apenas para a</p><p>duração da consulta.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>44</p><p>321</p><p>A operação é caracterizada por R ∪ S, onde R e S são duas relações com a mesma</p><p>quantidade de atributos, os quais operam sobre o mesmo domínio. O resultado contém as</p><p>tuplas que estão em R, S ou ambas. Suponha que R seja a relação professor e S a relação</p><p>aluno, se quisermos fazer a união das duas relações temos que:</p><p>Perceba que a operação de união vai juntar as linhas das tabelas verticalmente, colocando uma</p><p>sobre a outra. Essa operação somente pode ser realizada se as tabelas forem união compatíveis, isto</p><p>é, possuírem a mesma estrutura. Nesta situação, o domínio de cada um dos atributos deve ser igual.</p><p>INTERSECÇÃO</p><p>TABELA A ∩ TABELA B</p><p>-- RESULTA EM UMA NOVA TABELA QUE CONTÉM OS ELEMENTOS EM COMUM ÀS DUAS TABELAS SEM REPETIÇÕES --</p><p>A intersecção é representada por R ∩ S, traz como resultado a relação que contém as tuplas</p><p>que estão em ambas R e S. Ou seja, trata-se de uma operação que produz como resultado</p><p>uma tabela que contém, sem repetições, todos os elementos que são comuns às duas</p><p>tabelas fornecidas como operandos. Vamos agora, mostrar um exemplo da operação de</p><p>intersecção entre as tabelas professor escolar e professor universitário.</p><p>⋃</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>45</p><p>321</p><p>DIFERENÇA</p><p>TABELA A - TABELA B</p><p>-- RESULTA EM UMA NOVA TABELA QUE CONTÉM AS LINHAS PRESENTES NA TABELA A E AUSENTES NA TABELA B --</p><p>Quando pensamos nas relação R - S, a subtração ou diferença apresenta como resultado</p><p>outra relação que contém as tuplas que estão em R e que não estão em S. Veja que, ao</p><p>contrário das operações de união e intersecção listadas acima, a diferença não é</p><p>comutativa, ou seja, 𝑅 − 𝑆 ≠ 𝑆 − 𝑅. No caso do exemplo abaixo, observem que o resultado</p><p>trará as linhas que estão na Tabela PROFESSOR ESCOLAR que não estão na Tabela</p><p>PROFESSOR UNIVERSITÁRIO.</p><p>∩</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>46</p><p>321</p><p>PRODUTO CARTESIANO</p><p>(Relação A) X (Relação B)</p><p>-- RESULTA EM UMA NOVA TABELA COM TODAS AS COMBINAÇÕES DE LINHAS DE AMBAS AS RELAÇÕES --</p><p>Permite combinar informações de duas relações, fazendo uma junção de todas as linhas, a</p><p>primeira com todas as linhas da segunda. O produto cartesiano entre duas tabelas ou</p><p>relações gera uma nova relação com a quantidade de tuplas igual ao produto da</p><p>quantidade de tuplas de cada uma das relações. A nova relação possui todos os atributos</p><p>que compõem cada uma das tabelas, fazendo parte da operação da seguinte forma:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>47</p><p>321</p><p>JUNÇÃO</p><p>RELAÇÃO A⋈ CONDIÇÃO RELAÇÃO B</p><p>-- RESULTA EM UMA NOVA TABELA COM TODAS AS COMBINAÇÕES DE LINHAS QUE SATISFAZEM ALGUMA CONDIÇÃO --</p><p>A junção é uma conexão entre duas tabelas na qual elas são mescladas de acordo com</p><p>um ou mais campos em comum. A junção pode ser considerada um produto cartesiano</p><p>seguido por uma seleção. O símbolo ⋈ representa uma junção. Ao executar uma junção, ela</p><p>deve satisfazer a um predicado θ e deve existir pelo menos um campo nas duas tabelas</p><p>que operem sobre o mesmo domínio. Esse campo é usado para decidir quais linhas da</p><p>primeira tabela devem se relacionar com cada uma das linhas da segunda tabela.</p><p>Geralmente, exige-se que os valores dos atributos sejam iguais.</p><p>Se desejarmos apresentar – em uma única tabela – as linhas da Tabela PROFESSOR e da</p><p>Tabela DISCIPLINA cujo CÓDIGO (PROFESSOR) seja igual a CÓDIGO (DISCIPLINA),</p><p>temos que: PROFESSOR ⋈ CÓDIGO = CÓDIGO DISCIPLINA.</p><p>Perceba que a condição de igualdade foi imposta no exemplo acima, onde o código deveria</p><p>ser igual nas duas tabelas para que a linha aparecesse no resultado. Contudo, existem</p><p>variações da junção que não condiram apenas a igualdade dos atributos conforme veremos</p><p>abaixo.</p><p>Theta-Join: O primeiro tipo de junção é definido sobre alguma comparação entre os</p><p>atributos de junção. Essa comparação é conhecida como predicado. Caso esse predicado</p><p>seja uma igualdade entre valores, essa junção é conhecida como Equijoin. Vejamos um</p><p>exemplo:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>48</p><p>321</p><p>==1365fc==</p><p>Perceba que no exemplo acima a condição de junção foi determinada pelos valores de preços de</p><p>carros que são maiores ou iguais aos valores dos preços do carro. Neste caso, temo um exemplo de</p><p>Theta-join que não é um Equijoin.</p><p>Natural join (⋈): Junção na qual θ é uma igualdade predefinida entre todos os atributos de</p><p>mesmo nome presentes em duas relações R1 e R2 (atributos de junção). Estes atributos</p><p>só aparecem uma vez no resultado.</p><p>Junções externas ou outer joins. Junção na qual as tuplas de uma ou de ambas as</p><p>relações, que não são combinadas (ou seja, não existe valore correspondente na outra</p><p>relação que satisfaça a condição de junção), mesmo assim são preservadas no resultado.</p><p>Possui basicamente três variações. Logo em seguida, apresentamos um exemplo.</p><p>Left outer Join: tuplas da relação à esquerda são preservadas.</p><p>Notação:</p><p>Right outer join: tuplas da relação à direita são preservadas</p><p>Notação:</p><p>Full outer join: tuplas da relação à direita e à esquerda são preservadas</p><p>Notação:</p><p>Figura 4 - Exemplo de left, full e right outer join.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>49</p><p>321</p><p>Antijoin: Representada pelo seguinte símbolo: ⊳. A operação retorna os valores da relação</p><p>que não satisfazem à condição de junção. Vejam o exemplo abaixo:</p><p>DIVISÃO</p><p>A operação de divisão é usada nas consultas nas quais se emprega a frase: “para todos”.</p><p>Seu resultado será composto, basicamente, pelos elementos da primeira tabela que se</p><p>relacionem com todos os elementos da segunda tabela. Vejam o exemplo abaixo:</p><p>BANCA: FCC ANO: 2012 ÓRGÃO: TJ-RJ PROVA: ANALISTA JUDICIÁRIO - ANALISTA DE</p><p>SISTEMAS</p><p>Considere a seguinte tabela de um banco de dados.</p><p>TAB_FUNC = {COD_FUNC, NOME, COD_DEP, SAL}</p><p>Uma expressão da álgebra relacional representando a tabela formada pelos códigos</p><p>(COD_FUNC) e nomes (NOME) dos funcionários que ganham salário (SAL) entre 1000 e</p><p>3000 reais e trabalham no departamento de código (COD_DEP) 3 é</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>50</p><p>321</p><p>_______________________</p><p>Comentário: Uma das opções para resolver essa questão é construir o código SQL da consulta:</p><p>SELECT COD_FUNC, NOME FROM TAB_FUNC WHERE</p><p>SAL >= 1000 AND SAL</p><p>AND COD_DEP = 3;</p><p>Agora vamos transformar essa consulta para a álgebra relacional. Vamos fazer uma projeção dos atributos COD_FUNC e NOME</p><p>sobre o resultado de uma seleção com as restrições iguais às do select. Assim, temos como resultado:</p><p>π( σ= 1000 ^ SAL (TAB_FUN))</p><p>Vejam que esse resultado está presente na alternativa A com algumas modificações na ordem das restrições impostas pelo</p><p>comando de seleção.</p><p>Gabarito: A.</p><p>Ok! Vamos passar agora para o nosso tradicional mapa mental! Antes, porém, gostaria que</p><p>você se lembrasse das 8 operações principais da álgebra relacional que foram definidas na</p><p>primeira versão dos operadores.</p><p>• União , Interseção , Diferença e Produto cartesiano• Todos eles um pouco modificados para levar em conta</p><p>o fato de que seus operandos são, especificamente,</p><p>relações e não conjuntos arbitrários.</p><p>Operadores de conjuntos tradicionais</p><p>• De restrição (também conhecido como seleção),</p><p>projeção, junção e divisão.</p><p>Operadores relacionais especiais</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>51</p><p>321</p><p>TABELA COM O RESUMO DAS OPERAÇÕES DA ÁLGEBRA RELACIONAL.</p><p>Figura 5 - Resumo das operações da álgebra relacional.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>52</p><p>321</p><p>NORMALIZAÇÃO</p><p>Introdução</p><p>Normalizar em sentido amplo significa voltar à ordem. Mas que ordem seria essa que precisa</p><p>ser mantida quando executando um projeto de banco de dados? Um bom projeto de banco de</p><p>dados garante ao usuário a possibilidade de modificar o conteúdo do banco de dados sem</p><p>causar efeitos colaterais inesperados ou anomalias de atualização (ou modificação). Uma</p><p>anomalia de modificação é um efeito colateral inesperado que ocorre quando se alteram os</p><p>dados de uma tabela com redundâncias excessivas.</p><p>Observe a tabela abaixo, perceba que estamos observando que o cliente Thiago está</p><p>comprando alguns produtos para começar a estudar:</p><p>Perceba que os dados realçados em amarelo são repetidos ou redundantes em cada uma das</p><p>linhas. Agora imagine que eu resolvi atualizar o endereço de Thiago. Eu acessei a primeira linha</p><p>da tabela e alterei a informação conforme desejava. Veja que o endereço de Thiago mudou</p><p>para SQSW 304</p><p>Agora, o cliente Thiago, associado ao CPF 999999999, possui 2 endereços diferentes. Veja que</p><p>a causa para esse acontecimento foi justamente a redundância dos dados. Se o endereço de</p><p>Thiago estivesse separado em outra relação essa anomalia não teria se formado. Vejamos como</p><p>ficaria:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>53</p><p>321</p><p>Agora temos um conjunto de tabelas que possuem apenas um registro para o endereço de</p><p>Thiago. Desta forma, se atualizarmos a primeira linha da TABELA CLIENTE, não geramos uma</p><p>anomalia de atualização e ainda por cima reduzimos a redundância dos dados.</p><p>Show hein!?�</p><p>Conceitos Básicos</p><p>O processo de normalização, como foi inicialmente proposto por Codd (1972), ele sujeita um</p><p>esquema de relação a uma série de testes para certificar-se de que ele satisfaça a uma certa</p><p>forma normal. De uma forma mais simples, o processo observa o modelo de dados e faz</p><p>algumas checagens, caso as regras não sejam verificadas é necessário agir sobre o modelo</p><p>para organizar melhor os dados. Vejamos uma definição forma de normalização:</p><p>Definição: A normalização de dados é uma técnica de decomposição utilizada no projeto de</p><p>banco de dados com objetivo de prover um armazenamento consistente, evitando redundância</p><p>de dados e anomalias de atualização.</p><p>(Ministério da Economia - Especialista em Ciência de Dados - 2020) Julgue os itens a seguir a</p><p>respeito de banco de dados relacionais.</p><p>O processo de normalização de dados consiste em encontrar informações que atinjam um plano</p><p>de normalização com as informações constantes nas tuplas adjacentes.</p><p>Comentários:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>54</p><p>321</p><p>O processo de normalização visa reduzir a redundância e as anomalias de atualização. Logo,</p><p>temos uma alternativa errada.</p><p>Gabarito: Errado</p><p>Observe que a definição acima fala em decomposição. Desta forma, quando aplicamos a</p><p>normalização sobre um conjunto de tabelas, é normal que surjam novas colunas ou relações</p><p>para que os dados possam ser mais bem distribuídos pelas tabelas.</p><p>Inicialmente, Codd propôs três formas normais: 1ª, 2ª e 3ª. Todas baseadas nas dependências</p><p>funcionais entre os atributos de uma relação. Uma nova forma normal foi proposta por</p><p>Boyce-Codd, que é mais forte do que 3ª FN. Veja que estamos falando de um conceito novo,</p><p>logo precisamos explicá-lo, vamos então aproveitar para apresentar outros conceitos que nos</p><p>ajudam a entender melhor o assunto.</p><p>Para entender as formas normais é preciso, antes de qualquer coisa, entender alguns conceitos.</p><p>Para facilitar o seu entendimento vamos defini-lo e explicá-los em uma linguagem simples e</p><p>objetiva. Vejamos…</p><p>Dependência Funcional</p><p>A dependência funcional (DF) é uma restrição de duas ou mais colunas de uma tabela.</p><p>Considerando X e Y colunas de uma tabela, podemos dizer que X determina Y (X→Y) se existe</p><p>no máximo um valor de Y para cada valor de X. Por exemplo, o número do cadastro de pessoa</p><p>física determina a cidade (CPFAluno → CidadeAluno) na tabela do banco de dados de uma</p><p>universidade, se existir no máximo um valor de cidade para cada número do cadastro de</p><p>pessoa física. Vejamos alguns valores:</p><p>Na DF CPFAluno → CidadeAluno, a coluna que aparece à esquerda de uma DF é denominada</p><p>determinante, ou lado esquerdo (left-hand side = lado da mão esquerda). Nesse exemplo,</p><p>CPFAluno é um determinante. Também é possível pensar nas dependências funcionais como</p><p>identificadoras de potenciais chaves candidatas. Ao declarar que X → Y, se X e Y forem</p><p>colocados juntos em uma tabela sem outras colunas, X é uma chave candidata.</p><p>Todo determinante (lado esquerdo) é chave candidata se for colocado com outras colunas</p><p>determinadas por ele. Por exemplo, se CPFAluno, CidadeAluno e Turma forem colocados</p><p>juntos em uma tabela e CPFAluno → CidadeAluno e CPFAluno → Turma, então CPFAluno é</p><p>uma chave candidata. Se não houver outras chaves candidatas, um determinante se tornará a</p><p>chave primária se ele não permitir valores nulos.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>55</p><p>321</p><p>Vamos olhar mais uma vez para a tabela do início da aula. Perceba que nas linhas o atributo</p><p>nome possui o mesmo valor, logo, se Nome → Endereço, então a coluna endereço terá o</p><p>mesmo valor para as respectivas linhas. Formalmente, temos que:</p><p>Mais uma vez: a questão aqui é perceber que se você escolher um determinado valor para o</p><p>atributo X da relação (sabendo que X → Y) é possível saber o valor do atributo Y. Na definição</p><p>formal é dito que se duas tuplas tiverem o mesmo valor para X, então elas também terão o</p><p>mesmo valor de Y. É importante lembrar também que quando X → Y (X determina Y), X é</p><p>chamado de determinante e Y de determinado.</p><p>Uma dependência funcional pode ser considerada trivial, neste caso se X→ Y e X contém (฀) Y.</p><p>Para entender isso basta supor um conjunto de atributos (A, B, C, D, E) e o fato de A, B, C → C</p><p>faz desta DF uma dependência trivial. Por outro lado, temos a possibilidade da DF ser não</p><p>trivial se X → Y e X não contém Y. Usando os mesmos atributos acima, uma DF A, B→ D pode</p><p>ser considerada um exemplo de DF não trivial.</p><p>Figura 1 - Dependência trivial e não trivial</p><p>Antes de darmos prosseguimento ao assunto, gostaria de tecer alguns comentários sobre um</p><p>conjunto de regras que descrevem as propriedades das</p><p>dependências funcionais em banco de</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>56</p><p>321</p><p>dados. Três dessas regras são conhecidas como axiomas de Armstrong. Os axiomas de</p><p>Armstrong são um conjunto de regras que descrevem as propriedades das dependências</p><p>funcionais em um banco de dados. As dependências funcionais são uma parte importante da</p><p>teoria de banco de dados relacional e descrevem as relações entre os atributos de uma relação.</p><p>Existem três axiomas principais de Armstrong:</p><p>1. Reflexividade: Seja X um conjunto de atributos de uma relação R. Se Y é um subconjunto de X,</p><p>então a dependência funcional X→Y é válida. Isso significa que se os valores de X determinam os</p><p>valores de Y, então os valores de Y também determinam os valores de Y. Matematicamente, isso</p><p>é expresso como: X⊆Y⇒Y→X</p><p>2. Augmentação/Aumentativa: Seja X→Y uma dependência funcional e Z um conjunto de</p><p>atributos. Então, a dependência funcional XZ→YZ é válida. Isso significa que se os valores de X</p><p>determinam os valores de Y, adicionando mais atributos a X e Y (ou seja, Z), a dependência</p><p>funcional ainda é válida. Matematicamente, isso é expresso como: X→Y⇒XZ→YZ</p><p>3. Transitividade: Sejam X→Y e Y→Z duas dependências funcionais. Então, a dependência</p><p>funcional X→Z é válida. Isso significa que se os valores de X determinam os valores de Y, e os</p><p>valores de Y determinam os valores de Z, então os valores de X determinam os valores de Z.</p><p>Matematicamente, isso é expresso como: (X→Y)∧(Y→Z)⇒X→Z</p><p>Esses axiomas de Armstrong fornecem as regras fundamentais para a dedução de dependências</p><p>funcionais adicionais em um esquema de banco de dados, o que é crucial para o projeto e a</p><p>normalização de bancos de dados relacionais. Eles ajudam a identificar e inferir as dependências</p><p>funcionais que existem em um conjunto de dados, permitindo que os projetistas de banco de</p><p>dados criem esquemas mais eficientes e sem redundância.</p><p>Além dos axiomas de Armstrong, existem outras regras básicas para derivar dependências</p><p>funcionais em um conjunto de dados. Essas regras são usadas para inferir novas dependências</p><p>funcionais com base nas dependências existentes. Aqui estão algumas das regras mais comuns:</p><p>1. Regra da Decomposição (Analysis): Se X→YZ, então X→Y e X→Z. Essa regra afirma que se um</p><p>conjunto de atributos determina um conjunto de outros atributos, então ele também determina</p><p>cada um dos atributos individualmente.</p><p>2. Regra da União (Synthesis): Se X→Y e X→Z, então X→YZ. Essa regra diz que se um conjunto</p><p>de atributos determina dois outros conjuntos de atributos separadamente, então ele também</p><p>determina a união desses conjuntos.</p><p>3. Regra do Pseudotransitividade: Se X→Y e YW→Z, então XW→Z. Essa regra permite a dedução</p><p>de novas dependências funcionais quando há uma dependência em cadeia, mesmo que não seja</p><p>uma relação direta entre os atributos em questão.</p><p>4. Regra da Reflexividade (Trivial): Se Y⊆X, então X→Y. Essa regra afirma que um conjunto de</p><p>atributos determina a si mesmo.</p><p>5. Regra da Junção: Se X→Y e X→Z, então X→YZ. Essa regra é similar à regra da União, mas é</p><p>mais restritiva, pois requer que a dependência funcional seja a mesma em ambas as relações.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>57</p><p>321</p><p>Essas são algumas das regras básicas que podem ser aplicadas para derivar dependências</p><p>funcionais em um conjunto de dados. Elas são úteis para analisar e compreender as relações</p><p>entre os atributos e garantir que um esquema de banco de dados esteja bem projetado e livre de</p><p>anomalias de redundância e inconsistência. Na tabela abaixo, temos uma lista organizada das</p><p>regras e axiomas.</p><p>Axiomas/Regras Descrição</p><p>REFLEXIVIDADE X⊆Y⇒Y→X</p><p>AUGMENTAÇÃO/AUMENTATIVA X→Y⇒XZ→YZ</p><p>TRANSITIVIDADE (X→Y)∧(Y→Z)⇒X→Z</p><p>REGRA DA DECOMPOSIÇÃO (ANALYSIS) Se X→YZ, então X→Y e X→Z</p><p>REGRA DA UNIÃO (SYNTHESIS) Se X→Y e X→Z, então X→YZ</p><p>REGRA DO PSEUDOTRANSITIVIDADE Se X→Y e YW→Z, então XW→Z</p><p>REGRA DA AUTODETERMINAÇÃO (TRIVIAL) Se Y⊆X, então X→Y</p><p>REGRA DA JUNÇÃO Se X→Y e X→Z, então X→YZ</p><p>REGRA DA ACUMULAÇÃO Se X→Y, então XZ→ Y</p><p>Chave, Superchave, Chave Primária e Chave Candidata</p><p>Vamos aproveitar que estamos falando de chaves para relembrar seu conceito. Existem alguns</p><p>conceitos relacionados a chave. O primeiro deles é o de superchave. Uma definição formal</p><p>afirma que uma superchave de um esquema de relação R = {A1, A2, ..., An} é um conjunto de</p><p>atributos S C R (S está contido em R) que contenha a propriedade na qual não haverá duas</p><p>tuplas t1 e t2, em qualquer estado válido da relação r de R, cuja t1[S] = t2[S]. Em outras</p><p>palavras, uma superchave é um conjunto de atributos que tem a característica de restringir o</p><p>conjunto de tuplas de uma relação a apenas uma linha.</p><p>Quando olhamos para um conjunto de atributos em uma tabela que não se repete em</p><p>nenhuma das linhas da tabela podemos considerá-los uma superchave. Antes de continuar</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>58</p><p>321</p><p>nosso estudo sobre chaves, vejamos uma questão de uma prova sobre o assunto.</p><p>2017 - Órgão: Hemocentro Cargo: Analista de Tecnologia da Informação. QUESTÃO 34</p><p>Considere uma tabela relacional “R” e seus atributos definidos por R (F1, F2, F3, F4, F5) com</p><p>dependências funcionais F1, F2, F3 → F4, F5 e F5 → F1, F2. Com base nessas informações,</p><p>assinale a alternativa que contém o número total de superchaves distintas para essa tabela.</p><p>a) 2</p><p>b) 7</p><p>c) 8</p><p>d) 10</p><p>e) 12</p><p>Comentário:</p><p>Para responder essa questão, você precisa entender dois conceitos. O primeiro está relacionado</p><p>às chaves. Uma chave é qualquer superchave mínima. Ou seja, na chave, se você excluir algum</p><p>atributo, a lista perde a propriedade de chave da tabela ou relação em questão. Assim, para</p><p>resolvermos a questão precisamos pensar quais são as possíveis chaves desta relação.</p><p>Logo de cara, por meio das dependências funcionais (DFs) definidas pela questão você percebe</p><p>que F1, F2, F3 --> F4, F5, como a tabela só tem 5 atributos essa DF nos leva a primeira chave</p><p>candidata da relação (F1, F2 e F3).</p><p>Em seguida temos mais uma informação sobre as dependências funcionais, que F5 --> F1, F2.</p><p>Isso quer dizer que esse atributo (F5) pode identificar unicamente F1 e F2. Logo podemos</p><p>compor uma nova chave candidata (F5 e F3). Veja que eu simplesmente substituí F1 e F2 por</p><p>F5.</p><p>OK! Agora que temos nosso ponto de partida, as duas chaves candidatas desta relação, a</p><p>questão vira um problema de análise combinatória. Vamos construir todas a combinações</p><p>possíveis, que utilizam uma das chaves candidatas e acrescentá-las a nossa lista de superchaves</p><p>(F1, F2 e F3) e (F5 e F3).</p><p>Vamos lá então:</p><p>(F1, F2, F3, F4, F5) --- superchave com 5 atributos</p><p>(F1, F2, F3, F4), (F1, F2, F3, F5), (F5, F3, F2, F4), (F5, F3, F1, F4) --- superchaves com 4 atributos</p><p>(F1, F2, F3), (F5, F3, F1), (F5, F3, F2), (F5, F3, F4) - superchaves com 3 atributos</p><p>(F5, F3) - superchave com 2 atributos</p><p>Vejam que no total temos 10 possíveis superchaves para a relação em questão. Esse conjunto</p><p>inclui as duas chaves candidatas que descobrimos anteriormente. As duas superchaves em</p><p>negrito são chaves candidatas, as demais são apenas superchaves pois podem ter algum</p><p>atributo removido do seu conjunto e continuar sendo superchave da relação.</p><p>. Gabarito: D.</p><p>Já entendemos o conceito de superchave. Essa superchave pode ser considerada apenas uma</p><p>chave. Neste caso, a chave é defendida como uma superchave mínima (vou chamar ela de K),</p><p>onde qualquer remoção de atributo de K fará com que K deixe de ser superchave da relação.</p><p>Se um esquema tiver mais de uma chave, cada uma delas é chamada de chave candidata.</p><p>Entre as chaves candidatas uma delas é escolhida para ser a chave da relação e é denominada</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área</p><p>TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>59</p><p>321</p><p>de chave primária. As demais são renegadas e são denominadas chaves secundárias.</p><p>Entender o conceito de chave é o primeiro passo para o entendimento das formas normais. De</p><p>posse deste conhecimento, é possível definir o conceito de atributo primário, que nada mais é</p><p>do que um atributo membro (que faz parte) de alguma chave candidata da relação (R). Por sua</p><p>vez, de forma bem intuitiva, um atributo não primário é todo aquele que não for um atributo</p><p>primário!</p><p>ANO: 2015 ÓRGÃO: TJDFT PROVA: PROGRAMAÇÃO DE SISTEMAS. Julgue os itens</p><p>seguintes a respeito de banco de dados.</p><p>[61] Em uma tabela de um banco de dados relacional, se uma restrição de chave primária for</p><p>definida como composta de mais de uma coluna, os seus valores poderão ser duplicados em</p><p>uma coluna; no entanto, cada combinação de valores de todas as colunas na definição da</p><p>restrição de chave primária deve ser exclusiva.</p><p>Comentário:</p><p>Questão interessante pois nos permite fazer um rápido comentário sobre chaves. Uma chave</p><p>identifica unicamente uma linha de uma relação. Toda relação pode ter vários conjuntos de</p><p>atributos que podem ser escolhidos como chave primária. Cada uma dessas opções que se</p><p>caracterizam por ser uma superchave mínima, ou seja, não é possível retirar nenhum atributo</p><p>sem que o conjunto perca a propriedade de ser chave da relação, é denominada chave</p><p>candidata. A chave escolhida para ser a chave da relação é denominada chave primária. Ela</p><p>pode ser composta por um ou mais atributos.</p><p>A questão pede para analisarmos uma característica de chaves compostas por mais de um</p><p>atributo. Percebam que a unicidade dos valores deve considerar o conjunto dos atributos e</p><p>não um atributo individualmente. Sendo assim, a alternativa encontra-se correta.</p><p>Gabarito: C.</p><p>Com esses conceitos já é possível definir as três primeiras formas normais, bem como a forma</p><p>normal de Boyce-Codd.</p><p>Primeira Forma Normal (1FN)</p><p>Essa forma normal é considerada uma parte da definição de relação no modelo relacional</p><p>básico. Sua definição prevê que todos os atributos de uma relação devem ter seus valores</p><p>definidos sobre domínios atômicos ou indivisíveis. Em outras palavras, os campos de uma</p><p>tabela não devem ser compostos ou multivalorados. Veja abaixo uma tabela que não está na</p><p>1FN para duas relações sendo transformada em duas relações.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>60</p><p>321</p><p>Lembre-se que um atributo composto possui mais de valor de tipos diferentes associados a</p><p>uma coluna da tabela. No nosso exemplo, vamos usar o atributo Endereço com valores de Rua,</p><p>Número, Bairro e Cep. Já o atributo multivalorado pode ter 0, 1 ou vários valores associados ao</p><p>mesmo tipo de dados. Neste caso, selecionamos o atributo telefone como exemplo.</p><p>Você consegue perceber que temos dois atributos acima que não são atômicos. Claramente,</p><p>podemos dividir os valores presentes nas colunas Telefones e Endereço.</p><p>Vamos trabalhar cada um dos casos separadamente, começando pela coluna Telefones. Para</p><p>acabar com os atributos multivalores precisamos criar uma outra tabela que vai associar cada um</p><p>dos telefones ao seu respectivo aluno. Vejamos:</p><p>Perceba que a chave da tabela acima é composta pelos atributos Código_Aluno e Telefone.</p><p>Agora, precisamos voltar a nossa atenção para a relação original e separar os diversos atributos</p><p>atômicos da coluna Endereço.</p><p>Agora sim!! Temos uma tabela com todos os seus atributos associados a domínios indivisíveis</p><p>ou atômicos. Veja que, para resolver o problema de atributos compostos, separamos os valores</p><p>em várias colunas. Já, para resolver o problema de atributos multivalorados, criamos uma</p><p>tabela com a chave da relação original e uma coluna atômica que representa os</p><p>diversos/múltiplos valores em linhas distintas.</p><p>Vamos aproveitar para expor algumas definições de diversos autores sobre a primeira forma</p><p>normal:</p><p>Primeira forma normal</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>61</p><p>321</p><p>● Uma relação R existe na primeira forma normal (1FN) se, e somente se, todos os domínios</p><p>subjacentes contiverem apenas valores atômicos.</p><p>● No modelo relacional, um domínio é atômico se os elementos do domínio são</p><p>considerados unidades indivisíveis. Um esquema de relação R está na primeira forma</p><p>normal se todos os atributos de R são atômicos.</p><p>● A primeira forma normal afirma que o domínio de um atributo deve incluir apenas valores</p><p>atômicos (simples e indivisíveis) e que o valor de qualquer atributo em uma tupla deve ser</p><p>um único valor do domínio desse atributo.</p><p>● A primeira forma normal evita as chamadas relações aninhadas, essas relações contêm</p><p>vários atributos em uma única coluna e não são permitidas no modelo relacional.</p><p>Segunda Forma Normal (2FN)</p><p>A segunda forma norma visa resolver um problema de dependência parcial. Uma relação com</p><p>uma chave primária (ou candidata) composta onde um dos atributos determina isoladamente</p><p>outro atributo da relação. Vamos tentar dar um exemplo para fixarmos melhor os conceitos. Veja</p><p>a tabela abaixo:</p><p>Na relação anterior, os atributos Cod_Compra e CPF formam a chave primária composta da</p><p>tabela vendas. Contudo, é possível perceber que o CPF, isoladamente, determina os atributos</p><p>Nome e Endereço. Veja que, o exemplo que utilizamos anteriormente na nossa aula, possui</p><p>problemas com a segunda forma normal. Essa dependência parcial precisa ser removida da</p><p>relação. Para isso, o CPF se mantém como atributo na relação original e uma nova relação é</p><p>criada para absolver os atributos por ele determinado. Assim temos:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>62</p><p>321</p><p>==1365fc==</p><p>Agora temos duas relações com ausência de dependência funcional parcial. Logo, nosso</p><p>modelo acima está na segunda forma normal. Lembrando que existe uma cumulatividade entre</p><p>as formas. Assim, para estar na segunda forma normal, a relação tem que estar na 1FN e</p><p>cumprir os requisitos para eliminar as dependências parciais.</p><p>Uma definição mais rigorosa descreve que um esquema de relação R está na 2FN se todo</p><p>atributo não primário A em R tem dependência funcional total de uma chave candidata.</p><p>Podemos dizer também que não existe dependência parcial. De uma forma mais simples, a</p><p>ideia aqui é que cada atributo não chave seja definido por todos os atributos pertencentes à</p><p>chave primária ou a outra chave candidata da relação. Veja abaixo uma relação que não se</p><p>adequa à segunda forma normal, sendo, por meio do processo de normalização, transformada</p><p>em duas relações que estão de acordo com a definição apresentada.</p><p>Um fato interessante sobre a segunda forma normal é que para termos problema com uma</p><p>relação precisamos que uma chave candidata seja composta, ou seja, possuir mais de um</p><p>atributo, e que um desses atributos determine outro (atributo não primário) desta relação. Nas</p><p>provas de concursos o que geralmente acontece é termos uma chave primária composta e um</p><p>atributo pertencente a essa chave que determina um atributo não primário da tabela. Desta</p><p>forma, é possível aceitar algumas das definições abaixo:</p><p>Segunda forma normal</p><p>● Um esquema de relação R está na 2FN se cada atributo não primário A em R for total e</p><p>funcionalmente dependente da chave primária de R.</p><p>● Uma tabela está na segunda forma normal (2FN) se estiver na primeira forma normal</p><p>(1FN), e seus atributos não chaves forem totalmente dependentes da chave primária.</p><p>Terceira Forma Normal (3FN)</p><p>A normalização feita a partir da regra definida pela terceira forma normal leva a relação para</p><p>um estado específico. Neste caso, a relação tem que estar na segunda forma normal e ainda</p><p>todo atributo não primário da relação não ser transitivamente dependente de uma chave</p><p>da</p><p>relação.</p><p>Uma relação está na Terceira Forma Normal (3FN) se ela estiver na 2FN e nenhum atributo não</p><p>chave (não primário) é transitivamente dependente de uma chave candidata. Enfim, na 3FN</p><p>não se aceita dependência transitiva. O Navathe descreve uma definição mais geral da terceira</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>63</p><p>321</p><p>forma normal que diz basicamente o seguinte:</p><p>Um esquema de relação R está na terceira forma normal (3FN) sempre que uma dependência</p><p>funcional não trivial X à A for determinada em R, qualquer</p><p>(a) X é superchave de R; ou</p><p>(b) A é atributo primário de R;</p><p>Segundo o próprio autor, violar a condição (a) significa que X não é um super conjunto de</p><p>nenhuma chave de R; consequentemente, X pode ser não primário ou pode ser um dado</p><p>subconjunto de uma chave de R. O autor fala também que a violação de (b) significa que A é</p><p>um atributo não primário. Enfim, são condições para a terceira forma normal (1) ter</p><p>dependência funcional total para todas as chaves de R e (2) não ser transitivamente</p><p>dependente de nenhuma chave de R.</p><p>Se você achou essa definição de dependência transitiva muito complexa e não conseguiu fixar</p><p>nada, deixa eu tentar explicar de outra forma. Primeiro você precisa ter em mente que para</p><p>existir a transitividade temos que ter algumas premissas. Um atributo chave (primário), por</p><p>exemplo, CPF determina um outro atributo (não primário), por exemplo, telefoneResidencial;</p><p>que por sua vez determina outro atributo (não primário), por exemplo, Endereco. Vejamos a</p><p>tabela abaixo:</p><p>Pense da seguinte forma: se você me passar um número de CPF e eu devolvo um telefone</p><p>residencial. Da mesma forma, se você me der um número de telefone eu devolvo um endereço</p><p>único. Observe que, alguns telefones aparecem mais de uma vez na coluna, contudo, eles</p><p>determinam o mesmo endereço, ou, em outras palavras, eles estão associados ao mesmo</p><p>endereço. É justamente essa replicação que desejamos evitar na terceira forma normal. Vamos</p><p>então separar a tabela acima:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>64</p><p>321</p><p>Veja que a redundância anterior desapareceu. Agora temos o telefone residência associado a</p><p>apenas um endereço da tabela abaixo.</p><p>Agora, voltando aos conceitos mais formais, você deve lembrar que um atributo primário faz</p><p>parte de alguma chave candidata da sua relação. E para que exista necessidade de normalizar</p><p>utilizando a terceira forma normal temos que ter 3 atributos, vamos supor A, B e C, de forma</p><p>que A seja primário e B e C não primários. Além disso, temos que ter uma dependência</p><p>transitiva onde A→ B e B→ C.</p><p>Antes de apresentarmos as outras formas normais vamos fazer uma questão sobre os conceitos</p><p>vistos até aqui:</p><p>Ano: 2017 Órgão: Alerj Cargo: Analista de Tecnologia da Informação Q. 48. Em banco de dados,</p><p>a finalidade do processo de normalização é evitar redundâncias e, portanto, evitar certas</p><p>anomalias de atualização de dados. Considere as dependências funcionais entre os atributos das</p><p>seguintes entidades:</p><p>PACIENTE(ID_PACIENTE determina NOME_PACIENTE); MEDICO(ID_MEDICO</p><p>determina CRM_MEDICO, NOME_MEDICO);</p><p>CONSULTA(ID_PACIENTE, ID_MEDICO determinam DATA_ATEND, HORA_ATEND);</p><p>Sabendo-se que o atributo sublinhado é a chave primária, a alternativa que apresenta as</p><p>entidades e seus atributos na Terceira Forma Normal (3FN) é:</p><p>a) PACIENTE (ID_PACIENTE, NOME_PACIENTE, ID_MEDICO, DATA_ATEND,</p><p>HORA_ATEND)</p><p>MEDICO (ID_MEDICO, CRM_MEDICO, NOME_MEDICO)</p><p>CONSULTA (CRM_MEDICO, DATA_ATEND, HORA_ATEND)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>65</p><p>321</p><p>b) PACIENTE (ID_PACIENTE, NOME_PACIENTE) MEDICO (ID_MEDICO, CRM_MEDICO,</p><p>NOME_MEDICO)</p><p>CONSULTA (ID_PACIENTE, NOME_MEDICO, DATA_ATEND, HORA_ATEND)</p><p>c) PACIENTE (ID_PACIENTE, NOME_PACIENTE, ID_MEDICO) MEDICO (ID_MEDICO,</p><p>CRM_MEDICO, NOME_MEDICO) CONSULTA (ID_PACIENTE, DATA_ATEND, HORA_ATEND)</p><p>d) PACIENTE (ID_PACIENTE, NOME_PACIENTE) MEDICO (ID_MEDICO, CRM_MEDICO,</p><p>NOME_MEDICO)</p><p>CONSULTA (ID_PACIENTE, ID_MEDICO, DATA_ATEND, HORA_ATEND)</p><p>e) PACIENTE (ID_PACIENTE, NOME_PACIENTE) MEDICO (ID_MEDICO, CRM_MEDICO,</p><p>NOME_MEDICO)</p><p>CONSULTA (ID_PACIENTE, CRM_MEDICO, NOME_MEDICO,</p><p>DATA_ATEND, HORA_ATEND)</p><p>Comentário:</p><p>Para chegarmos até a terceira forma normal temos que cumprir alguns requisitos. As relações</p><p>do modelo não podem ter atributos compostos ou multivalorados (1FN), não pode existir em</p><p>cada uma das relações dependência parcial (2FN) nem dependência transitiva (3FN). Ao ajustar</p><p>o modelo podemos encontrar nossa resposta na alternativa D.</p><p>Gabarito: D</p><p>Forma Normal de Boyce-CODD (FNBC)</p><p>Uma coisa interessante é que a forma normal de Boyce-Codd foi proposta como uma forma</p><p>mais simples que 3FN, porém mais rígida. Devido ao fato de a 3FN não tratar satisfatoriamente</p><p>casos onde uma relação tem mais de uma chave candidata, e quando estas chaves são</p><p>compostas e possuem atributos em comum.</p><p>Se uma relação está na FNBC, também está na 3FN. Sua definição diz o seguinte: uma relação</p><p>está na FNBC se todo determinante é chave candidata. Abaixo segue uma figura que</p><p>demonstra uma normalização de uma relação para a FNBC.</p><p>Veja na figura que temos duas chaves candidatas (Propriedade_num) e (Nome_cidade,</p><p>Num_lote). Temos ainda uma dependência funcional onde Area determina o Nome_cidade.</p><p>Neste caso, temos que fazer a separação proposta na figura acima. Veja que Area →</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>66</p><p>321</p><p>Nome_cidade não fere a terceira forma normal pois Nome_cidade é um atributo primário.</p><p>Vamos agora continuar nosso estudo fazendo mais uma questão sobre o assunto.</p><p>Analista de Políticas Públicas e Gestão Governamental - CGM Niterói - 2018</p><p>A identificação das dependências funcionais constitui um importante passo para a</p><p>normalização de tabelas de bancos de dados. Considere uma tabela T, com atributos A, B</p><p>e C, onde A foi definido como primary key, e C como unique.</p><p>Assinale a opção que indica o mínimo conjunto de dependências funcionais que devem</p><p>existir, além das dependências triviais e das que podem ser derivadas, para que essa</p><p>tabela esteja normalizada até a forma normal Boyce-Codd.</p><p>a) A→ B; A→ C; B→ C.</p><p>b) A→ B; B→ C.</p><p>c) C→ A; C→ B.</p><p>d) A→ B; A→ C.</p><p>e) A→ B; A→ C; B→ A.</p><p>Comentário:</p><p>Essa questão pode ter sua resolução dividida em duas partes. Sabemos que temos três</p><p>atributos: A, B e C. O atributo “A” foi definido como chave primária. Logo, pela</p><p>explicação que vimos até aqui temos que A → B e A → C. A chave primária não pode ter</p><p>valores nulos.</p><p>A outra informação que temos é que o atributo C possui a propriedade de unicidade</p><p>(UNIQUE). Neste caso temos que conhecer um pouco de SQL para facilitar a resolução da</p><p>questão. O fato de um atributo ser definido como unique não faz com que ele seja um</p><p>determinante, pois o valor nulo continua fazendo parte do seu domínio. Perceba que, se</p><p>o valor nulo pode aparecer em uma linha associada ao atributo C, C não pode ser</p><p>definido como um determinante. Assim, C é um atributo não chave ou não primário.</p><p>Agora vamos relembrar da definição de FNBC: “todo determinante é a chave candidata.”</p><p>O atributo A já é uma chave candidata. Nossa preocupação agora é com B. B precisar ser</p><p>um determinante e uma chave candidata para não termos problema com a FNBC nem</p><p>com a 3FN. Logo, temos que garantir que B → A. Com essa dependência, B passa a ser</p><p>chave candidata pois determina a chave primária. Assim, nosso conjunto de dependência</p><p>resolve nosso problema.</p><p>Mas professor, e a alternativa A, por que ela não é a nossa resposta visto que B → C?</p><p>Porque, neste caso, temos uma dependência transitiva, visto que B e C são não chave.</p><p>Logo, na letra A podemos visualizar uma</p><p>dependência transitiva A→B e B→ C,o que fere</p><p>a terceira forma normal. Já na alternativa E esse problema está resolvido pois tanto A</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>67</p><p>321</p><p>quanto B são chaves candidatas, então, mesmo que C não seja um atributo não chave ele</p><p>não vai gerar problemas com a FNBC.</p><p>Logo, temos a nossa resposta na alternativa E.</p><p>Gabarito: E</p><p>BANCA: FCC ANO: 2015 ÓRGÃO: TRE-RR PROVA: ANALISTA JUDICIÁRIO - ANÁLISE DE</p><p>SISTEMAS. Considere a entidade a seguir, retirada de um diagrama de</p><p>entidade-relacionamento, que possui como chave primária os atributos employee_id e</p><p>start_date.</p><p>Pode-se afirmar que para esta entidade está na Segunda Forma Normal (2FN), ela precisa</p><p>estar na Primeira Forma Normal (1FN) e</p><p>a) os atributos employee_id, job_id e department_id precisam ser chave estrangeira nesta</p><p>entidade.</p><p>b) a chave primária precisa ser formada pelos atributos employee_id, job_id e</p><p>department_id, que são provenientes de tabelas relacionadas a esta.</p><p>c) o atributo employee_id, que é parte da chave primária, precisa ser proveniente de uma</p><p>das tabelas relacionadas a esta.</p><p>d) os atributos end_date, job_id e department_id precisam ser dependentes da chave</p><p>primária composta inteira, não apenas de parte dela.</p><p>e) todos os atributos precisam permitir apenas valores exclusivos, de forma que não haja</p><p>redundância e, consequentemente, desperdício de espaço em disco.</p><p>Comentário:</p><p>Vejam que pelo diagrama sabemos que JOB_HISTORY se relaciona com outras 3</p><p>entidades, possivelmente, EMPLOYEE, JOB e DEPARTMENT. Se lembrarmos da definição</p><p>da segunda forma normal que diz para eliminarmos dependência parcial, podemos</p><p>observar que a alternativa D está correta, pois é uma implicação da 2FN.</p><p>Gabarito: D.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>68</p><p>321</p><p>QUARTA E QUINTA FORMAS NORMAIS</p><p>As formas normais vistas até o momento são apoiadas em dependências funcionais (2FN,</p><p>3FN e BCNF) e podem ser consideradas para cada relação. Uma base de dados será</p><p>considerada normalizada para uma dessas formas quanto todas as suas relações se</p><p>apresentarem nessa forma.</p><p>Tratamos das formas normais mais “simples” e relacionadas à DF, espero que você tenha</p><p>entendido. Qualquer dúvida ou comentário pode ser enviado para mim aqui mesmo, no</p><p>fórum do Estratégia Concursos ou por e-mail. Mas, o objetivo desta aula é: ensinar todas as</p><p>formas normais. Precisamos, então, desmistificar a quarta e a quinta forma normal. Então,</p><p>prepare sua mente, pois as próximas linhas deixarão todo assunto bem claro. Vem comigo!</p><p>Primeira informação que devemos ter que faz parte da base do conhecimento das próximas</p><p>formas normais é a ideia de decomposição sem perdas na junção. A decomposição deve</p><p>ser feita de maneira que, quando se recompõe a relação original, apenas e exatamente as</p><p>tuplas existentes na relação original são reobtidas. A decomposição baseada nas</p><p>dependências funcionais (2FN, 3FN e FNBC) não causam perdas de junção, portanto a</p><p>normalização para as formas normais baseadas em dependências funcionais está livre</p><p>desse problema.</p><p>Contudo, a normalização de relações através de dependências funcionais é apenas uma</p><p>das maneiras, embora a mais importante, de evitar inconsistências em relações. Outra</p><p>maneira advém de uma variação das dependências funcionais, chamadas dependência</p><p>multivalorada (DMV), multi-dependência funcional (MDF), ou ainda, dependência multivalor.</p><p>E o que seria essa tal dependência multivalorada? A dependência multivalorada caracteriza</p><p>o fato de que, embora um conjunto de atributos não possa determinar o valor de outro</p><p>atributo, ainda assim, esse conjunto consegue restringir os valores possíveis para aquele</p><p>atributo.</p><p>Vamos a um exemplo simples. Uma pessoa pode ter vários números de telefones e um</p><p>número de telefone pode ser compartilhado por várias pessoas. Nesse relacionamento N</p><p>para M não é possível encontrar uma DF entre esses dois atributos, porém podemos</p><p>visualizar o que chamamos de dependência multivalorada entre o Id_pessoa e</p><p>Num_telefone que pode ser representada por Id_pessoa →→ Num_telefone. Diz-se que</p><p>Id_pessoa multidetermina Num_telefone, ou, que Num_telefone é funcionalmente</p><p>multidependete de Id_pessoa.</p><p>Aqui cabe uma observação a respeito das DMV. Elas são consequência da 1FN que não</p><p>permite que um atributo tenha um conjunto de valores. Veja um exemplo entre Funcionário,</p><p>Projeto e Dependente.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>69</p><p>321</p><p>Veja que na tabela acima podemos encontrar duas DMV. Funcionário multidetermina</p><p>Projeto e Funcionário multidetermina. Dependente.</p><p>Sempre que houver a ocorrência de um atributo multivalorado ocorrerá a multi-dependência</p><p>funcional. Entretanto, se houver duas ou mais dependências</p><p>multivaloradas independentes entre si na mesma relação então pode ocorrer anomalias</p><p>de atualização na relação. Tente inserir na tabela a informação que Thiago participará do</p><p>projeto 03(proj 03). Para mantermos a DMV, teremos que adicionar 3 linhas, uma para cada</p><p>dependente de Thiago, caso contrário ao procurarmos os dependentes dos funcionários que</p><p>participam do projeto 03 retornaremos uma informação incorreta.</p><p>Se tivermos um ou mais atributos multivalorados independentes na mesma relação, temos</p><p>de repetir, gerando todas as combinações entre os atributos para manter a consistência</p><p>entre as instancias.</p><p>Observe a relação (Funcionário, Projeto e Dependente). Veja que, ainda que esteja na</p><p>FBNC, ela ainda apresenta redundância. Observe também que a decomposição não pode</p><p>se basear em DF, pois não existem DF na relação. É necessário, portanto, uma regra para</p><p>o tratamento dessas situações, que possa ser usada para decompor a relação sem perdas.</p><p>Numa relação R {A, B, C} se existe uma DMV A →→ B também existe A →→ C (ou seja,</p><p>A →→ R –AB). Nestes casos, as DMV surgem sempre aos pares e representam-se por: A</p><p>→→ B|C. Apenas reforçando, se A →→B|C, então a relação deve conter todas as</p><p>combinações possíveis dos conjuntos de valores de B e de C, associados ao mesmo valor</p><p>de A.</p><p>Formalmente podemos pensar da seguinte forma: dada uma relação R com atributos A, B,</p><p>C, existe uma dependência multivalorada do atributo A no atributo B (A →→ B) se, um valor</p><p>de A é associado a uma coleção específica de valores de B, independente de quaisquer</p><p>valores de C.</p><p>QUARTA FORMA NORMAL (4FN)</p><p>Começamos com uma definição informal: Uma relação está na 4FN se para qualquer DMV</p><p>X →→ Y a relação não tem outros atributos além dos que fazem parte de X e de Y. Esse</p><p>tipo de DMV é conhecido como trivial.</p><p>Outra definição, desta vez, de acordo com o Navathe. "Um esquema de relação R está na</p><p>4FN com relação a um conjunto de dependências funcionais ou multivaloradas F se, para</p><p>toda dependência multivalorada não trivial X→→Y em F+, X for uma superchave de R."</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>70</p><p>321</p><p>Formalmente, o conjunto de todas as dependências de F, bem como todas as dependências</p><p>que podem ser inferidas para F, é chamado de clausura de F, que é denotada por F+.</p><p>A DMV pode ser classificada como trivial ou não trivial. Numa relação R, a DMV A →→ B</p><p>é dita trivial se:</p><p>(a) B for subconjunto de A ou</p><p>(b) A U B = R.</p><p>Uma DMV que não satisfaz nem a (a) nem a (b) é dita não trivial. Em outras palavras, de</p><p>uma maneira mais intuitiva, pode-se dizer que uma DMV não trivial ocorre sempre que</p><p>houver mais do que um atributo multivalorado na mesma relação. Assim, o que se procura</p><p>é a chamada DMV não trivial. Observe que as relações que contêm DMVs tendem a ser</p><p>all-key (tudo é chave)</p><p>– ou seja, sua chave é formada por todos os seus atributos tomados</p><p>em conjunto.</p><p>O processo de normalização de uma relação envolvendo DMVs não triviais, que não está</p><p>na 4FN, consiste em decompô-la de modo que cada DMV seja representada por uma</p><p>relação separada, onde se torna uma DMV trivial. Veja o nosso exemplo para a relação</p><p>(Funcionario, Projeto, Dependente), que será decomposta em duas relações (Funcionario,</p><p>Dependente) e (Funcionario, Projeto).</p><p>Vimos que a propriedade sem perda na junção é uma das diversas propriedades para o</p><p>projeto de banco de dados. De fato, essa propriedade é essencial: sem ela, há perdas de</p><p>informação. Quando restringimos o conjunto de relações válidas entre as que satisfazem</p><p>um conjunto de dependências funcionais e multivaloradas, podemos usar essas</p><p>dependências para mostras que certas decomposições são decomposições sem perda na</p><p>junção.</p><p>QUINTA FORMA NORMAL (5FN)</p><p>A próxima e última forma normal tem relação direta com Dependência de Junção (DJ), por</p><p>isso, ela também é conhecida como Forma Normal Projeção Junção. Quando é possível</p><p>definir um conjunto de relações válidas sobre um esquema R que são resultado de uma</p><p>decomposição sem perdas, podemos definir essa restrição como uma dependência de</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>71</p><p>321</p><p>junção. Perceba que a ideia é separar a relação original em um conjunto de relações que</p><p>podem se reagrupar.</p><p>Em outras palavras, uma dependência de junção (DJ), denotada por DJ (R1, R2, ... , Rn),</p><p>em um esquema de relação R, especifica uma restrição nos estados r de R. Essa restrição</p><p>diz que todo estado legal r de R deveria ter uma decomposição de junção não aditiva para</p><p>R1, R2, ... , Rn, ou seja, para todo r tenham</p><p>*(πR1(r), πR2(r), ..., πRn(r)) = r (π é uma projeção sobre a relação R)</p><p>A aplicação da 5FN consiste em encontrar a DJ * [R1, R2, … Rn] que permite decompor</p><p>uma relação sem perdas. E efetivar essa decomposição. Ela advém das dependências</p><p>multivaloradas que ocorrem entre os atributos de uma relação. A verificação da 5ª FN</p><p>somente precisa ser empreendida em relações que tenham três ou mais atributos como</p><p>parte da chave.</p><p>A 5ª FN trata da situação em que a informação permite ser reconstruída a partir de</p><p>componentes menores que possam ser mantidos com uma redundância menor. Ela</p><p>generaliza os casos não cobertos pela segunda, terceira e quarta formas normais. Vejamos</p><p>a sua definição.</p><p>Definição: Um esquema de relação R está na quinta forma normal (5ª FN) em</p><p>relação a um conjunto F de dependências funcionais, multivaloradas e de junção</p><p>se, para cada dependência de junção não trivial DJ (R1, R2, ... , Rn) de F+ (ou seja,</p><p>implicada por F), todo Ri for uma superchave de R.</p><p>Abaixo segue o exemplo da relação Fornece, que não pode ser decomposta em duas</p><p>relações, pois a junção entre elas geraria tuplas espúrias. Assim, usamos a 5FN para</p><p>decompor a relação em três (R1, R2, R3), de modo que uma junção feita sobre essa relação</p><p>mantém a propriedade de junção sem perdas. Perceba que a relação fornece possui uma</p><p>dependência de junção pois existe a possibilidade de decompor a relação em 3 e a partir</p><p>delas reconstruir fornece.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>72</p><p>321</p><p>==1365fc==</p><p>Agora entenda que, o objetivo da 5FN é descobrir que a relação tem um dependência de</p><p>junção não trivial, ou seja, possuir um conjunto de projeções que podem ser usadas para</p><p>recompor a relação original e decompor a relação de acordo com essa projeções. Observe</p><p>que, cada uma das relações resultantes da decomposição não possui dependência de</p><p>junção.</p><p>BANCA: CESPE ANO: 2014 ÓRGÃO: TJ-SE PROVA: ANALISTA JUDICIÁRIO BANCO DE</p><p>DADOS</p><p>Julgue os seguintes itens, acerca de projetos, administração de usuários e acessos de</p><p>bancos de dados relacionais.</p><p>[1] Se uma variável de relação estiver na quinta forma normal, não será possível realizar</p><p>nenhuma decomposição sem haver perda de informação.</p><p>_______________________</p><p>Comentário: Acabamos de explicar essa característica da 5FN que deve ser capaz de dividir a relação em um conjunto de outras</p><p>relações de forma que a junção desse conjunto consiga reconstruir a relação original sem perdas ou tuplas espúrias.</p><p>Gabarito E.</p><p>ESQUEMA DAS FORMAS NORMAIS</p><p>Figura 1 - Resumo das formas normais</p><p>Encontrar e eliminar a dependência de junção</p><p>5ª Forma Normal</p><p>Eliminar dependência multivalorada</p><p>4ª Forma Normal</p><p>Eliminar dependência funcional cujo determinante não é chave candidata</p><p>FNBC</p><p>Eliminar dependências transitivas</p><p>3ª Forma Normal</p><p>Eliminar dependências funcionais não plenas</p><p>2ª Forma Normal</p><p>Eliminar atributos não atômicos</p><p>1ª Forma Normal</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>73</p><p>321</p><p>QUESTÕES COMENTADAS</p><p>Aproveitamos este espaço para complementar seu entendimento sobre o assunto, sempre</p><p>colocando pinceladas extras de conteúdo. Na lista abaixo resolvemos incluir apenas questões do</p><p>CESPE. Essas questões abordam os assuntos vistos nesta nossa aula: modelo relacional, álgebra</p><p>relacional e formas normais. A minha sugestão é que, antes de tentar fazer as questões, você</p><p>assista aos vídeos sobre o assunto associados a essa aula.</p><p>1. (ANAC - Analista de Sistemas - CESPE – 2024)</p><p>Acerca de bancos de dados relacionais, julgue os itens que se seguem.</p><p>Definir um atributo como chave do tipo entidade significa que a propriedade de unicidade deve</p><p>ocorrer para pelo menos uma entidade, portanto, quaisquer duas ou mais entidades podem ter,</p><p>ao mesmo tempo, o mesmo valor para o atributo-chave.</p><p>Comentário: O item está incorreto. Quando um atributo é definido como chave do tipo entidade</p><p>em um banco de dados relacional, isso significa que cada valor desse atributo deve ser único em</p><p>todas as tuplas (linhas) da tabela. Portanto, não é permitido que duas ou mais entidades tenham</p><p>o mesmo valor para o atributo-chave ao mesmo tempo. A propriedade de unicidade se aplica a</p><p>todas as entidades da tabela, garantindo que cada uma seja identificada de forma exclusiva pela</p><p>chave. Assim, o item está incorreto ao afirmar que é possível que duas ou mais entidades tenham</p><p>o mesmo valor para o atributo-chave ao mesmo tempo.</p><p>Gabarito: Errada</p><p>2. (ANAC - Analista de Sistemas - CESPE – 2024)</p><p>Acerca de bancos de dados relacionais, julgue os itens que se seguem.</p><p>Em um banco de dados relacional, a estratégia de implementação de uma view denominada</p><p>materialização da view implica criar fisicamente uma tabela temporária a partir da primeira</p><p>consulta a essa view e mantê-la ativa por um determinado período, considerando que poderão</p><p>seguir-se outras consultas.</p><p>Comentário: O item está correto. A estratégia de implementação de uma view denominada</p><p>"materialização da view" envolve criar fisicamente uma tabela temporária a partir da primeira</p><p>consulta à view e mantê-la ativa por um determinado período, permitindo que outras consultas</p><p>sejam realizadas com base nessa tabela temporária. Isso pode melhorar o desempenho das</p><p>consultas ao evitar a necessidade de recomputar os resultados da view a cada vez que ela é</p><p>acessada. Portanto, a afirmação é verdadeira.</p><p>Gabarito: Certa</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>74</p><p>321</p><p>3. (ANAC - Analista de Sistemas - CESPE – 2024)</p><p>Acerca de bancos de dados relacionais, julgue os itens que se seguem.</p><p>Em bancos de dados relacionais, a restrição de integridade de entidade estabelece-se entre</p><p>duas relações e é usada para manter a consistência entre as tuplas nessas duas relações.</p><p>Comentário: O item está incorreto. A restrição de integridade de entidade, também conhecida</p><p>como restrição de chave primária, é estabelecida dentro de uma única relação (ou tabela) e é</p><p>usada para garantir a unicidade de valores em uma coluna específica, geralmente a chave</p><p>primária, dentro dessa relação. Portanto, a afirmação está errada. O item está descrevendo a</p><p>integridade referencial. A integridade referencial é uma restrição que mantém a consistência dos</p><p>dados entre duas tabelas relacionadas. Ela garante que os valores em uma coluna de chave</p><p>estrangeira em uma tabela existam como valores correspondentes na coluna de chave primária</p><p>de outra tabela relacionada.</p><p>Gabarito: Errada</p><p>4. (MPU-TO - DBA - CESPE – 2024)</p><p>Julgue os itens a seguir, referentes a banco de dados.</p><p>Em um banco de dados relacional, uma chave primária é o conjunto de um ou mais campos</p><p>utilizados para identificar um único registro na tabela.</p><p>Comentário:</p><p>O item está correto. Em um banco de dados relacional, uma chave primária é de fato o conjunto</p><p>de um ou mais campos que são usados para identificar exclusivamente cada registro na tabela. A</p><p>chave primária garante a unicidade dos registros, o que significa que nenhum valor na chave</p><p>primária pode ser duplicado dentro da tabela. Portanto, uma chave primária é essencialmente um</p><p>identificador único para cada linha em uma tabela, e pode ser composta por um único campo ou</p><p>por uma combinação de vários campos, dependendo dos requisitos de modelagem de dados e</p><p>das necessidades do sistema.</p><p>Gabarito: Certa</p><p>5. (MPU-TO - DBA - CESPE – 2024)</p><p>A respeito de modelagem relacional, modelagem dimensional e normalização das estruturas de</p><p>dados, julgue os itens que se seguem.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>75</p><p>321</p><p>Chave estrangeira é um campo que aponta para a chave primária de outra tabela ou da mesma</p><p>tabela, dessa forma, passa a existir uma relação entre duplas de duas tabelas ou de uma única</p><p>tabela.</p><p>Comentário:</p><p>O item está correto. Uma chave estrangeira é um campo em uma tabela que faz referência à</p><p>chave primária de outra tabela ou da mesma tabela. Essa referência estabelece uma relação entre</p><p>as duas tabelas, permitindo a integridade referencial no banco de dados. Uma chave estrangeira</p><p>em uma tabela cria um vínculo entre as tuplas (ou linhas) das duas tabelas, garantindo que cada</p><p>valor na coluna da chave estrangeira exista como um valor correspondente na chave primária da</p><p>outra tabela. Isso ajuda a manter a consistência e a integridade dos dados no banco de dados.</p><p>Gabarito: Certa</p><p>6. (MPU-TO - DBA - CESPE – 2024)</p><p>A respeito de modelagem relacional, modelagem dimensional e normalização das estruturas de</p><p>dados, julgue os itens que se seguem.</p><p>No modelo relacional de dados, o termo relação é usado para fazer referência a uma tabela,</p><p>enquanto o termo tupla é utilizado para se referir a uma linha da tabela.</p><p>Comentário:</p><p>O item está correto. No modelo relacional de dados, o termo "relação" é usado para se referir a</p><p>um conjunto de tuplas (linhas) que compartilham a mesma estrutura de atributos, ou seja, uma</p><p>relação corresponde a uma tabela. O termo "tupla" é utilizado para se referir a uma linha</p><p>específica dentro dessa tabela, que contém os valores para cada atributo (coluna) definido na</p><p>estrutura da tabela. Portanto, a relação é usada, sim, para se referir a uma tabela individual.</p><p>Gabarito: Certo</p><p>7. TST/ Cesbraspe/2024/TI</p><p>Em normalização de bancos de dados, a forma em que a tabela não possui atributos</p><p>transitivamente dependentes da chave primária e em que não há colunas dependentes de outras</p><p>colunas que não são chaves é denominada</p><p>a) primeira forma normal.</p><p>b) associações.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>76</p><p>321</p><p>c) terceira forma normal.</p><p>d) diagrama de dependências funcionais.</p><p>e) segunda forma normal.</p><p>Comentário:</p><p>A descrição corresponde à: c) terceira forma normal. Na terceira forma normal (3NF), uma tabela</p><p>está na forma normal mais alta possível, onde:</p><p>1. Todos os atributos não chaves são transitivamente dependentes da chave primária.</p><p>2. Não há dependências funcionais entre os atributos não chave.</p><p>Em outras palavras, não há colunas dependentes de outras colunas que não sejam chaves, e</p><p>todos os atributos não chaves são totalmente dependentes da chave primária. Isso elimina</p><p>redundâncias e anomalias nos dados.</p><p>Gabarito: C</p><p>8. CEBRASPE (CESPE) - APO (SEPLAN RR)/SEPLAN RR/Tecnologia da Informação/2023</p><p>Julgue o item a seguir a respeito do conceito de modelagem relacional de dados.</p><p>No modelo relacional de dados todas as relações necessitam de uma chave primária formada</p><p>por uma ou mais tuplas que identificam um único registro.</p><p>Comentário:</p><p>O item está incorreto. No modelo relacional de dados, cada relação (tabela) precisa ter uma</p><p>chave primária que identifica de forma única cada registro na tabela. No entanto, essa chave</p><p>primária não é formada por uma ou mais tuplas, mas sim por um ou mais atributos (colunas) da</p><p>tabela.</p><p>A chave primária é uma ou mais colunas cujos valores devem ser únicos para cada linha na tabela</p><p>e não podem ser nulos. Ela serve para garantir a integridade dos dados e identificar</p><p>exclusivamente cada registro na tabela.</p><p>Portanto, a chave primária não é formada por tuplas, mas sim por atributos (colunas) da tabela.</p><p>Gabarito: Errado</p><p>9. CEBRASPE (CESPE) - AFM (Pref Fortaleza)/Pref Fortaleza/Ciência da Computação,</p><p>Informática, Processamento de Dados/2023</p><p>Com relação a conceitos de modelos de dados e de modelagem de dados, julgue o item</p><p>subsecutivo.</p><p>Como forma de garantir a integridade referencial, sempre que uma linha de uma tabela for</p><p>removida, automaticamente as linhas de outras tabelas que fazem referência a ela também serão</p><p>removidas.</p><p>Comentário:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>77</p><p>321</p><p>O item apresenta uma afirmação incorreta. A integridade referencial, em um sistema de banco de</p><p>dados, geralmente envolve a manutenção da consistência entre as chaves estrangeiras e as</p><p>chaves primárias. No entanto, a remoção de uma linha de uma tabela não implica</p><p>automaticamente a remoção de linhas em outras tabelas que fazem referência a ela.</p><p>Para garantir a integridade referencial, existem diferentes opções, em SQL, por exemplo uma das</p><p>mais utilizadas é a operação CASCADE (cascata). A operação CASCADE permite especificar que</p><p>as alterações feitas em uma tabela primária (por exemplo, a remoção de uma linha) também</p><p>serão aplicadas automaticamente às tabelas secundárias que possuem chaves estrangeiras</p><p>relacionadas.</p><p>No entanto, a decisão de usar CASCADE ou outras opções depende das necessidades</p><p>específicas do sistema e da política de manipulação de dados. Em alguns casos, pode ser</p><p>preferível definir que a remoção de uma linha em uma tabela primária não afete</p><p>automaticamente as tabelas secundárias, para evitar remoções indesejadas e dar mais controle</p><p>sobre as operações.</p><p>Portanto, a afirmação de que "automaticamente as linhas de outras tabelas que fazem referência</p><p>a ela também serão removidas" não é verdadeira em geral e depende das configurações</p><p>específicas de integridade referencial adotadas no projeto do banco de dados.</p><p>Gabarito: Errado</p><p>10.CEBRASPE (CESPE) - AFM (Pref Fortaleza)/Pref Fortaleza/Ciência da Computação,</p><p>Informática, Processamento de Dados/2023</p><p>Com relação a conceitos de modelos de dados e de modelagem de dados, julgue o item</p><p>subsecutivo.</p><p>Na abordagem relacional, a propriedade de fechamento garante que a saída de qualquer</p><p>operação possa ser usada como entrada de outra operação.</p><p>Comentário:</p><p>O item está correto. Na abordagem relacional, a propriedade de fechamento (ou fecho) garante</p><p>que a saída de qualquer operação também seja uma tabela relacional, o que significa que pode</p><p>ser usada como entrada para outra operação. Essa propriedade é fundamental</p><p>para a</p><p>flexibilidade e a composição de operações em sistemas de banco de dados relacionais.</p><p>Em outras palavras, se você realizar uma operação relacional como projeção, seleção, união,</p><p>interseção, diferença, ou outras, a tabela resultante ainda será uma tabela relacional válida. Isso</p><p>permite a composição e encadeamento de operações para realizar tarefas mais complexas.</p><p>Portanto, a propriedade de fechamento é uma característica importante da álgebra relacional,</p><p>que é a base teórica para as operações em bancos de dados relacionais.</p><p>Gabarito: Certo</p><p>11.CEBRASPE (CESPE) - Ana (MPE RO)/MPE RO/Redes e Comunicação de Dados/2023</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>78</p><p>321</p><p>Em um banco de dados relacional, se as entidades que possuem atributos em comum e</p><p>conceitos semelhantes podem ser concentradas em entidades superiores, então o</p><p>relacionamento, nesse caso, é do tipo</p><p>a) especialização.</p><p>b) agregação.</p><p>c) normalização.</p><p>d) generalização.</p><p>e) higienização.</p><p>Comentário:</p><p>O relacionamento descrito, onde entidades com atributos e conceitos semelhantes são</p><p>concentradas em entidades superiores, é conhecido como generalização. Portanto, a opção</p><p>correta é: d) generalização.</p><p>A generalização e a especialização são conceitos importantes em modelagem de dados,</p><p>especialmente em sistemas de banco de dados relacionais. Ambos se referem à organização</p><p>hierárquica de entidades em um modelo de dados.</p><p>1. Especialização:</p><p>Definição: A especialização ocorre quando uma entidade mais geral é subdividida em</p><p>subconjuntos mais específicos que possuem atributos ou características exclusivas.</p><p>Exemplo: Considere uma entidade "Veículo". A especialização poderia dividir "Veículo" em</p><p>subconjuntos mais específicos, como "Carro", "Caminhão" e "Moto". Cada um desses</p><p>subconjuntos pode ter atributos específicos, além dos atributos compartilhados pela entidade</p><p>"Veículo".</p><p>Finalidade: Permite modelar de forma eficaz as diferenças entre subconjuntos de entidades que</p><p>compartilham características comuns, mas também têm características distintas.</p><p>2. Generalização:</p><p>Definição: A generalização é o processo oposto à especialização. Envolve a combinação de</p><p>entidades mais específicas em uma entidade mais geral que possui atributos comuns.</p><p>Exemplo: Se tivermos entidades "Cachorro", "Gato" e "Pássaro", que compartilham atributos</p><p>comuns como "Nome" e "Idade", a generalização poderia criar uma entidade mais geral</p><p>chamada "Animal de Estimação" que inclui esses atributos compartilhados.</p><p>Finalidade: Ajuda a simplificar e abstrair o modelo, identificando características comuns entre</p><p>entidades mais específicas.</p><p>Em resumo, especialização é o processo de subdividir uma entidade mais geral em entidades</p><p>mais específicas, enquanto generalização é o processo de combinar entidades mais específicas</p><p>em uma entidade mais geral. Esses conceitos são úteis para representar hierarquias de entidades</p><p>e suas relações em modelos de dados.</p><p>Gabarito: D</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>79</p><p>321</p><p>12.CEBRASPE (CESPE) - Ana (MPE RO)/MPE RO/Sistemas/2023</p><p>Na modelagem de dados, o objeto que representa uma entidade do mundo real e contém</p><p>atributos para descrever suas características é</p><p>a) a função.</p><p>b) a chave estrangeira.</p><p>c) o procedimento.</p><p>d) a visão.</p><p>e) a tabela.</p><p>Comentário:</p><p>Na modelagem de dados, o objeto que representa uma entidade do mundo real e contém</p><p>atributos para descrever suas características é a tabela. Portanto, a opção correta é: e) a tabela.</p><p>Em modelagem de dados, uma tabela é uma estrutura fundamental usada para representar uma</p><p>entidade específica. Aqui estão os principais pontos relacionados ao conceito de tabela:</p><p>1. Entidade do Mundo Real:</p><p>● A tabela representa uma entidade do mundo real, como um objeto, pessoa, evento ou</p><p>conceito que pode ser identificado e sobre o qual se deseja armazenar informações.</p><p>2. Atributos:</p><p>● Cada tabela é composta por colunas, e cada coluna representa um atributo específico da</p><p>entidade. Os atributos são características ou propriedades da entidade que desejamos</p><p>armazenar.</p><p>3. Linhas e Registros:</p><p>● Cada linha em uma tabela representa um registro específico ou instância da entidade.</p><p>Uma linha contém os valores para cada atributo associado àquela instância.</p><p>4. Chave Primária:</p><p>● Geralmente, uma tabela terá uma coluna designada como chave primária. A chave</p><p>primária é usada para identificar de forma exclusiva cada registro na tabela. Ela garante a</p><p>unicidade dos registros.</p><p>5. Relacionamentos:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>80</p><p>321</p><p>● As tabelas podem ter relacionamentos com outras tabelas por meio de chaves</p><p>estrangeiras. Isso permite a representação de conexões entre diferentes entidades.</p><p>6. Normalização:</p><p>● O processo de normalização é aplicado para organizar os dados em uma tabela de</p><p>maneira eficiente, minimizando redundâncias e dependências.</p><p>7. SQL (Structured Query Language):</p><p>● A manipulação de dados em tabelas é realizada por meio de linguagens de consulta,</p><p>como SQL. Isso inclui operações como SELECT, INSERT, UPDATE e DELETE.</p><p>Exemplo hipotético de tabela: Pessoa</p><p>ID Nome Idade Cidade</p><p>1 João 30 São Paulo</p><p>2 Maria 25 Rio de Janeiro</p><p>3 Carlos 40 Recife</p><p>Neste exemplo, "Pessoa" é a entidade representada pela tabela. As colunas (ID, Nome, Idade,</p><p>Cidade) são atributos da entidade. Cada linha representa um registro específico (uma pessoa)</p><p>com valores para cada atributo. A coluna "ID" serve como chave primária para identificar de</p><p>forma exclusiva cada pessoa na tabela.</p><p>Gabarito: E</p><p>13.CEBRASPE (CESPE) - Ana TI (FUB)/FUB/2023</p><p>Julgue o item subsecutivo, a respeito de administração de banco de dados.</p><p>De acordo com a restrição de domínio de uma relação, em uma chave estrangeira, o valor do</p><p>campo tem que coincidir com uma chave primária de uma tabela referenciada.</p><p>Comentário:</p><p>A afirmação está incorreta. A restrição em questão é, de fato, relacionada à integridade</p><p>referencial, não ao domínio. A restrição de integridade referencial garante que os valores em uma</p><p>chave estrangeira correspondam a valores existentes na chave primária (ou chave candidata) de</p><p>outra tabela (ou da própria tabela no caso de auto relacionamento).</p><p>A restrição de domínio, por outro lado, diz respeito aos valores permitidos em um campo</p><p>específico, independentemente de relações entre tabelas. A restrição de domínio pode</p><p>especificar, por exemplo, que um campo de idade deve conter apenas valores numéricos</p><p>positivos.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>81</p><p>321</p><p>Gabarito: Errado</p><p>14.CEBRASPE (CESPE) - Ana Reg (AGER MT)/AGER MT/Ciências da Computação e Sistemas</p><p>de Informação/2023</p><p>Uma tabela de banco de dados que não possui dependências funcionais parciais está na</p><p>a) primeira forma normal (1FN).</p><p>b) segunda forma normal (2FN).</p><p>c) terceira forma normal (3FN).</p><p>d) forma normal de boyce-codd (BCNF).</p><p>e) quarta forma normal (4FN).</p><p>Comentário:</p><p>A Segunda Forma Normal (2FN) é uma forma de normalização em bancos de dados relacionais</p><p>que visa eliminar as dependências parciais dos dados. Ela se baseia na Primeira Forma Normal</p><p>(1FN), que exige que os valores em uma tabela sejam atômicos (indivisíveis). A 2FN vai além,</p><p>abordando a questão das dependências funcionais entre colunas.</p><p>Para que uma tabela esteja na 2FN, ela deve satisfazer dois critérios principais:</p><p>Estar na 1FN: Todos os valores em cada coluna devem ser atômicos, ou seja, não devem ser</p><p>subdivisíveis em partes menores. Por exemplo, uma coluna de endereço não deve conter um</p><p>conjunto de campos separados (como número, rua, cidade, etc.). Cada pedaço de informação</p><p>deve ser colocado em</p><p>tabela. Não</p><p>existe o conceito de ponteiros conectando uma tabela a</p><p>outra. Mas o que seriam ponteiros? Tenho certeza de que</p><p>você fez essa pergunta mentalmente! Ponteiro é um tipo</p><p>especial de dados que armazena um endereço de memória.</p><p>Por exemplo, se um ponteiro p armazena o endereço de</p><p>uma variável i, podemos dizer p aponta para i ou p é o</p><p>endereço de i. Enfim, reforçando, no modelo relacional, não</p><p>existe o conceito de ponteiros conectando uma tabela a</p><p>outra.</p><p>Ainda não está satisfeito com a explicação acima? Talvez ela seja, de fato, um pouco abstrata.</p><p>Mas vamos olhar, mais uma vez, para uma imagem e tentar esclarecer, de uma vez por todas,</p><p>essa característica. Olhe para o modelo abaixo e perceba que temos duas tabelas: empregado</p><p>(EMP) e departamento (DEPTO). Perceba que a coluna DEPTO# da tabela EMP possui os</p><p>valores dos departamentos.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>5</p><p>321</p><p>Sendo assim, existe uma conexão entre a linha D1 da tabela DEPTO e a linha E1 da tabela</p><p>EMP. Essa conexão é representada pelo aparecimento do valor D1 na tabela EMP. Vamos agora</p><p>resumir os conceitos que vimos até aqui.</p><p>Figura 2 - Conceitos básicos do modelo relacional</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>6</p><p>321</p><p>Agora que você está seguro dos conceitos básicos, vamos avançar na teoria do assunto. O</p><p>C.J. Date trabalha com uma definição mais formal do termo relação. O próprio C.J. Date afirma</p><p>que, nesse estágio do assunto, a definição não fará muito sentido. Mas o sarrafo1 do Estratégia</p><p>sempre foi alto. E eu quero que você esteja afinado no assunto. Então, vou tentar, após</p><p>apresentar a definição, descrever melhor cada um dos componentes presentes na definição,</p><p>quais sejam:</p><p>1 Sarrafo é um militar para identificar um padrão mínimo aceitável. No salto com vara, o sarrafo é aquele pedaço de madeira</p><p>colocado na horizontal que deve ser ultrapassado pelo saltado</p><p>Um gerador de tipo de relação e uma interpretação pretendida para esses tipos de relações</p><p>gerados</p><p>Recursos para definição de RelVars ou variáveis de relação desses tipos de relações gerados.</p><p>Um operador de atribuição relacional para atribuição de valores de relações a essas RelVars.</p><p>Uma coleção ilimitada de operadores relacionais genéricos (“a álgebra relacional”) para derivar</p><p>valores de relações a partir de outros valores de relações.</p><p>A coleção ilimitada de tipos escalares está associada aos tipos de dados que podem ser</p><p>atribuídos a cada um dos atributos de uma tabela. Existem alguns tipos de dados básicos,</p><p>como numérico, texto, data, hora e booleano. Os tipos de dados vão definir os valores</p><p>possíveis de uma coluna da tabela ou relação. Mas existem mesmo tipos ilimitados? Sim!</p><p>Porque os usuários podem definir seus próprios tipos de dados.</p><p>Imagine que João queira definir um tipo de dado Nota, que restringe os valores possíveis de</p><p>uma variável a números inteiros entre zero e dez. Veja que 10 é um dos valores possíveis para</p><p>as variáveis associadas ao tipo Nota. Vamos tentar criar um exemplo simples para fixar esse</p><p>conceito:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>7</p><p>321</p><p>Assim, o tipo define o domínio de uma variável. Cada número associado a uma variável, em</p><p>determinado momento do tempo, é um valor.</p><p>Agora que você já tem os tipos, você pode definir as relações. Um gerador de tipos de</p><p>relações é um descritor que vai estabelecer os nomes e os tipos de cada coluna que serão</p><p>geradas em uma tabela. Imagine que estamos definindo um modelo de tabela que pode ser</p><p>construído.</p><p>De posse dos tipos de relação, agora podemos definir uma variável de relação ou relvar. Veja</p><p>que uma relvar é, basicamente, uma variável cujo valor é um conjunto de linhas em</p><p>determinado momento. Todas as vezes que modificamos o conjunto de linhas de uma tabela,</p><p>estamos alterando o valor da RelVar. Vamos supor agora que temos a RelVar ALUNO, descrita</p><p>com três colunas e seus seguintes valores:</p><p>NumAluno Nome DataAprovacao</p><p>001 Lulu Concurseira 2019</p><p>002 Breno Moreira 2019</p><p>A variável de relação ALUNO apresenta um estado específico com duas linhas preenchidas.</p><p>Esse é o valor da RelVar neste momento. Agora, volte na tabela e preencha com seu nome!</p><p>Você vai mudar o valor da relação. Para fazer isso, você simplesmente escreveu seu nome na</p><p>tabela acima. Contudo, o modelo relacional resolveu definir um operador de atribuição</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>8</p><p>321</p><p>relacional. Ele é responsável por receber o valor novo da relação e atribuir à variável.</p><p>ALUNO := ALUNO + (NOVA LINHA COM SEUS DADOS)</p><p>Como em todas as atribuições, o que está acontecendo aqui em termos conceituais é que</p><p>(a) a expressão no lado direito é avaliada e, em seguida, (b) o resultado dessa avaliação é</p><p>atribuído à variável do lado esquerdo. Observe que “:=” é considerado um operador de</p><p>atribuição, usado apenas para ilustrar o nosso exemplo.</p><p>Por fim, falaremos sobre a coleção ilimitada de operadores relacionais, definida por Codd e</p><p>comumente denominada de álgebra relacional. A álgebra relacional é uma coleção de</p><p>operadores que tomam relações como seus operandos e retornam uma relação como seu</p><p>resultado. Falaremos novamente sobre esse tópico mais à frente na nossa aula. Que tal</p><p>fazermos uma questão sobre esse assunto?</p><p>Ano: 2019 Banca: CESPE Órgão: SEFAZ-RS Prova: Auditor Assunto: Banco de dados</p><p>No modelo relacional, variável corresponde a</p><p>A) um valor variável que não possui local no tempo nem no espaço.</p><p>B) uma matriz de valores codificados e armazenados na memória.</p><p>C) um recipiente para se armazenar um valor que pode ser atualizado.</p><p>D) um valor que não admite substituição.</p><p>E) uma constante individual.</p><p>Comentário:</p><p>Veja que essa questão foi totalmente inspirada no livro do CJ Date – Introdução a Sistemas de</p><p>Banco de Dados, que também usamos na elaboração deste material. Veja o que diz o texto</p><p>original do livro:</p><p>“A primeira coisa que precisamos fazer é identificar a diferença lógica crucial e fundamental</p><p>entre valores e variáveis (há uma confusão surpreendente sobre essa questão na literatura) ...</p><p>adotamos as seguintes definições:</p><p>Um valor é uma “constante individual” – por exemplo, a constante individual que é o inteiro 3.</p><p>Um valor não possui local no tempo ou no espaço. Contudo, os valores podem ser</p><p>representados na memória por meio de alguma codificação, e tais representações, ou (nosso</p><p>termo preferido) aparições, possuem locais no tempo e no espaço. Na realidade, aparições</p><p>distintas do mesmo valor podem existir em vários locais distintos no tempo e no espaço,</p><p>significando, informalmente, que diversas variáveis diferentes podem ter o mesmo valor, ao</p><p>mesmo tempo. Observe que, por definição, um valor não pode ser atualizado; se pudesse,</p><p>então, depois dessa modificação, ele não seria mais o mesmo valor.</p><p>Uma variável é um recipiente para um aparecimento de um valor. Uma variável possui um local</p><p>no tempo e no espaço. Além disso, logicamente, as variáveis, diferente dos valores, podem ser</p><p>atualizadas; ou seja, o valor atual da variável em questão pode ser substituído por outro valor,</p><p>provavelmente, diferente do anterior. “</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>9</p><p>321</p><p>Assim, temos nossa resposta na alternativa C, ou seja, uma variável corresponde a um</p><p>recipiente para se armazenar um valor que pode ser atualizado.</p><p>Gabarito: C.</p><p>O CATÁLOGO DE DADOS RELACIONAL</p><p>O Sistema de Gerenciamento de Banco de Dados precisa fornecer uma função de catálogo ou</p><p>dicionário. O catálogo é o lugar em que – dentre outras</p><p>sua própria coluna.</p><p>Eliminar Dependências Parciais: Não pode haver dependências parciais das colunas não chave</p><p>(colunas que não fazem parte da chave primária) em relação à chave primária. Isso significa que</p><p>cada coluna não chave deve depender completamente da chave primária, e não apenas de uma</p><p>parte dela.</p><p>Em outras palavras, a 2FN garante que os dados estejam organizados de forma que, para cada</p><p>linha na tabela, todos os valores não chaves dependem da chave primária completa, e não</p><p>apenas de parte dela.</p><p>Essa forma normal ajuda a evitar redundância de dados e garante a integridade e a consistência</p><p>dos dados em um banco de dados relacional. Logo, nossa resposta encontra-se na alternativa B.</p><p>Gabarito: B</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>82</p><p>321</p><p>15.CEBRASPE (CESPE) - AFM (Pref Fortaleza)/Pref Fortaleza/Ciência da Computação,</p><p>Informática, Processamento de Dados/2023</p><p>Com relação a conceitos de modelos de dados e de modelagem de dados, julgue o item</p><p>subsecutivo.</p><p>Uma relação que esteja na quinta forma normal (5FN) está necessariamente livre de anomalias</p><p>que sejam passíveis de serem eliminadas a partir de projeções.</p><p>Comentário:</p><p>A quinta forma normal de fato se preocupa em normalizar o modelo, segmentando a relação</p><p>original em mais de uma relação. O pulo do gato é que a relação original pode ser recomposta</p><p>ou reconstruída com as mesmas tuplas originais. Ou seja, depois da normalização a 5FN</p><p>podemos efetuar uma junção nas projeções feitas na tabela original que reestabeleçam os dados</p><p>no formato anterior a normalização.</p><p>Gabarito: Certo</p><p>16.CEBRASPE (CESPE) - Ana TI (FUB)/FUB/2023. Acerca de bancos de dados relacionais,</p><p>julgue o item seguinte.</p><p>As tabelas que estejam na primeira forma normal (1FN) e que possuam apenas uma coluna como</p><p>chave primária também estão na segunda forma normal (2FN).</p><p>Comentário:</p><p>A afirmação está correta. A Primeira Forma Normal (1FN) exige que os valores em cada coluna</p><p>de uma tabela sejam atômicos, ou seja, não divisíveis. Além disso, cada tabela deve ter uma</p><p>chave primária única.</p><p>A Segunda Forma Normal (2FN) estabelece que a tabela deve estar na 1FN e que todos os</p><p>atributos não pertencentes à chave primária devem ser totalmente dependentes dela. Isso</p><p>significa que, se a chave primária for composta, todos os outros atributos da tabela devem</p><p>depender dela como um todo, não apenas de parte dela.</p><p>Portanto, se uma tabela está na 1FN e possui apenas uma coluna como chave primária, então ela</p><p>também está na 2FN, porque não há subpartes da chave primária sobre as quais os outros</p><p>atributos precisam depender. É importante notar que, se a chave primária fosse composta, seria</p><p>necessário avaliar a dependência funcional de cada atributo em relação à chave primária para</p><p>determinar se a tabela atende à 2FN.</p><p>Gabarito: Certo</p><p>17.CEBRASPE (CESPE) - AFM (Pref Fortaleza)/Pref Fortaleza/Geografia/2023. No que diz</p><p>respeito a banco de dados relacional e banco de dados geográfico, julgue o item a seguir.</p><p>Uma das limitações do Sistema de Gerenciamento de Banco de Dados Relacional (SGBD-R) é</p><p>que ele contém apenas os dados brutos sobre o domínio de interesse.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>83</p><p>321</p><p>Comentário:</p><p>O item está incorreto. Um Sistema de Gerenciamento de Banco de Dados Relacional (SGBD-R)</p><p>não costuma armazenar dados brutos. Na verdade, um SGBD-R é projetado para armazenar e</p><p>gerenciar dados organizados em tabelas relacionadas. Além dos dados brutos, ele inclui a</p><p>definição de relacionamentos entre tabelas, integridade referencial, chaves primárias e</p><p>estrangeiras, procedimentos armazenados, visões, entre outros elementos.</p><p>Os SGBDs relacionais fornecem uma estrutura robusta para modelar dados complexos e</p><p>relacionamentos entre entidades. Portanto, a afirmação de que um SGBD-R contém apenas</p><p>dados brutos é imprecisa. Eles são projetados para fornecer uma visão mais abrangente e</p><p>organizada dos dados.</p><p>Gabarito: Errado</p><p>18. CEBRASPE (CESPE) - Ana TI (FUB)/FUB/2023</p><p>Acerca de bancos de dados relacionais, julgue o item seguinte.</p><p>Uma visão representa um conjunto de informações de uma ou mais tabelas, em uma</p><p>representação específica, ocupando espaço físico no banco de dados.</p><p>Comentário:</p><p>O item está incorreto. Uma visão em um banco de dados relacional não ocupa espaço físico no</p><p>banco de dados da mesma forma que uma tabela. Uma visão é essencialmente uma</p><p>representação virtual dos dados, definida por meio de uma consulta SQL sobre uma ou mais</p><p>tabelas existentes.</p><p>Ao criar uma visão, você está especificando uma consulta que define como os dados devem ser</p><p>apresentados, mas a visão em si não armazena os dados fisicamente. Quando você consulta a</p><p>visão, o SGBD executa a consulta definida pela visão nas tabelas reais e retorna os resultados.</p><p>Portanto, a parte da afirmação que diz que uma visão ocupa espaço físico no banco de dados</p><p>está incorreta. Uma visão não armazena dados fisicamente; ela fornece uma visão virtual e</p><p>organizada dos dados existentes nas tabelas relacionadas.</p><p>Gabarito: Errado</p><p>19.CEBRASPE (CESPE) - Ana TI (FUB)/FUB/2023</p><p>Julgue o item subsecutivo, a respeito de administração de banco de dados.</p><p>Views são visões de tabelas de banco de dados e são armazenadas em disco, com as</p><p>informações de condições e situações que necessitem de atualização constante.</p><p>Comentário:</p><p>O item está incorreto. Uma visão (view) em um banco de dados relacional é uma representação</p><p>virtual dos dados de uma ou mais tabelas, definida por meio de uma consulta SQL. No entanto,</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>84</p><p>321</p><p>as visões em si não armazenam os dados fisicamente; elas apenas armazenam a definição da</p><p>consulta.</p><p>Portanto, a parte da afirmação que diz "e são armazenadas em disco" está incorreta. As visões</p><p>não são armazenadas como conjuntos físicos de dados no disco. Quando uma visão é</p><p>consultada, o sistema executa a consulta definida pela visão nas tabelas subjacentes em tempo</p><p>real para obter os resultados.</p><p>Além disso, a parte da afirmação que menciona "informações de condições e situações que</p><p>necessitem de atualização constante" não é uma característica inerente às visões. As visões</p><p>refletem os dados nas tabelas subjacentes e são atualizadas automaticamente à medida que os</p><p>dados nessas tabelas são alterados.</p><p>Portanto, uma visão é uma representação lógica dos dados, e sua definição é armazenada, mas</p><p>não os dados em si.</p><p>Gabarito: Errado</p><p>20.CEBRASPE (CESPE) - APO (SEPLAN RR)/SEPLAN RR/Tecnologia da Informação/2023</p><p>No que se refere às características de um banco de dados relacional, julgue o item que se segue.</p><p>No modelo relacional, as estruturas de dados lógicas não são separadas das estruturas de</p><p>armazenamento físico, o que significa que os administradores de banco de dados não podem</p><p>gerenciar o armazenamento de dados físicos sem afetar o acesso a esses dados como uma</p><p>estrutura lógica.</p><p>Comentário:</p><p>Essa afirmação está incorreta. No modelo relacional, as estruturas de dados lógicas são</p><p>separadas das estruturas de armazenamento físico. Essa separação é uma das características</p><p>fundamentais do modelo relacional de banco de dados.</p><p>No modelo relacional, os administradores de banco de dados podem gerenciar o</p><p>armazenamento de dados físicos sem afetar a estrutura lógica dos dados. Isso significa que eles</p><p>podem realizar operações de armazenamento, como alocar espaço em disco, mover dados entre</p><p>discos ou otimizar o desempenho de armazenamento, sem que os aplicativos ou consultas que</p><p>acessam os dados precisem ser modificados. A separação entre a estrutura lógica e física é uma</p><p>das vantagens do modelo relacional, pois oferece flexibilidade e abstração aos desenvolvedores</p><p>e administradores de banco de dados.</p><p>Gabarito: Errado</p><p>21.Cebraspe – Técnico (Analista de Sistemas) Infraestrutura e Segurança da Informação</p><p>(BNB)/2022</p><p>A tabela de compras, representada a seguir, está na 3.ª forma normal.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>85</p><p>321</p><p>Comentário:</p><p>No contexto analisado, verifica-se que o atributo "valor_total_produto" é classificado como um</p><p>atributo derivado, o qual é calculado a partir de outros dois atributos já existentes na tabela,</p><p>nomeadamente "quantidade_produto" e "valor_unitario_produto". Este tipo de atributo, que</p><p>depende funcionalmente de outros atributos não-chave da mesma tabela, introduz a chamada</p><p>dependência transitiva. Como resultado, a tabela em discussão não satisfaz os critérios da</p><p>Terceira Forma Normal (3NF), que demanda a remoção de dependências transitivas e a garantia</p><p>de que cada atributo não-chave seja completamente dependente de uma chave primária.</p><p>Portanto, a tabela não se encontra em conformidade com a 3NF, tornando a afirmação sobre</p><p>essa forma normal incorreta.</p><p>Em virtude desse cenário, a presença de uma coluna cujo valor é derivado de outros atributos</p><p>gera um conflito com os princípios de normalização, em particular com a 3NF. A 3NF procura</p><p>mitigar redundâncias e anomalias ao exigir que todos os atributos não-chave sejam</p><p>funcionalmente dependentes apenas da chave primária. Neste contexto, a presença do atributo</p><p>"valor_total_produto" que depende de maneira transitiva de "quantidade_produto" e</p><p>"valor_unitario_produto" revela uma inadequação na estrutura da tabela em relação a essa forma</p><p>normal. Consequentemente, a assertiva em análise apresenta-se como uma alternativa incorreta</p><p>no contexto da conformidade com a Terceira Forma Normal.</p><p>Gabarito: Errado</p><p>22.Cebraspe – Técnico – Analista de Sistemas – Desenvolvimento de Sistemas (BNB)/2022</p><p>Julgue o item a seguir, a respeito do conceito de modelo relacional de dados.</p><p>Um modelo de dados relacional, cujo esquema é visto como um gráfico em que os tipos de</p><p>relacionamento são arcos e os tipos de objetos são nós, é um modelo de banco de dados</p><p>projetado como uma abordagem flexível para representar objetos e seus relacionamentos.</p><p>Comentário:</p><p>A afirmação está incorreta. O modelo de dados descrito, onde os tipos de relacionamento são</p><p>representados como arcos e os tipos de objetos são nós, não se refere ao modelo de dados</p><p>relacional, mas sim a uma abordagem conhecida como modelo de dados orientado a grafos.</p><p>Os modelos de dados orientados a grafos são projetados para representar objetos e seus</p><p>relacionamentos de uma maneira mais flexível e rica, onde o foco é nas conexões entre os</p><p>elementos, representadas graficamente por nós (objetos) e arcos (relacionamentos).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>86</p><p>321</p><p>O modelo de dados relacional, por outro lado, é baseado em tabelas, onde os dados são</p><p>organizados em linhas e colunas, e as relações são estabelecidas por chaves estrangeiras que</p><p>fazem referência a chaves primárias em outras tabelas. O modelo relacional é amplamente</p><p>utilizado em bancos de dados relacionais, como o MySQL, Oracle, SQL Server, entre outros.</p><p>Portanto, o modelo de dados descrito na afirmação se refere ao modelo de dados orientado a</p><p>grafos, e não ao modelo de dados relacional.</p><p>Gabarito: Errado</p><p>23.Cebraspe – Técnico – Analista de Sistemas – Desenvolvimento de Sistemas (BNB)/2022</p><p>Acerca da normalização das estruturas de dados, julgue o item que se segue.</p><p>Na terceira forma normal, devem-se eliminar os campos que podem ser obtidos pela equação</p><p>de outros campos da mesma tabela.</p><p>Comentário:</p><p>Na Terceira Forma Normal (3NF) de normalização de bancos de dados, o objetivo é eliminar</p><p>dependências transitivas e garantir que cada atributo não-chave seja totalmente dependente da</p><p>chave primária. Neste cenário, uma das ações que podem ser tomadas é eliminar campos de</p><p>uma relação que possam ser obtidos pela equação de outros campos da mesma tabela,</p><p>removendo dependências não diretas entre os atributos.</p><p>Na 3NF, não é permitido ter atributos não-chave que dependam de outros atributos não-chave.</p><p>A eliminação das dependências transitivas envolve dividir a tabela original em múltiplas tabelas</p><p>menores, onde as dependências sejam diretas entre atributos e a chave primária, sem</p><p>intermediários.</p><p>Por exemplo, suponha que você tenha uma tabela de produtos com atributos como "preço" e</p><p>"quantidade", e um atributo derivado "valor_total" que é calculado como "preço * quantidade".</p><p>Na Terceira Forma Normal, você poderia eliminar o campo "valor_total" (deixar de armazenada</p><p>na base); daí você poderia manter esse atributo como calculado.</p><p>Portanto, na 3NF, o foco está em eliminar dependências transitivas entre atributos, e uma das</p><p>ações possíveis é eliminar campos que possam ser obtidos por equações de outros campos.</p><p>Gabarito: Certo</p><p>24.Cebraspe – Técnico – Analista de Sistemas – Desenvolvimento de Sistemas (BNB)/2022</p><p>Em relação à integridade referencial, julgue o item subsequente.</p><p>Denomina-se integridade referencial a declaração de um atributo ou um conjunto de atributos</p><p>para ser de um domínio específico para que se garanta que todas as operações aplicadas sejam</p><p>executas de forma íntegra ou desfeitas totalmente voltando ao estado anterior às aplicações das</p><p>operações.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>87</p><p>321</p><p>Comentário:</p><p>A integridade referencial é um conceito fundamental em bancos de dados relacionais, mas a</p><p>definição fornecida não está precisa. A integridade referencial se refere à consistência dos</p><p>relacionamentos entre tabelas em um banco de dados relacional. Ela garante que as chaves</p><p>estrangeiras em uma tabela (que fazem referência a uma chave primária em outra tabela) estejam</p><p>sempre relacionadas a registros válidos na tabela referenciada. Logo, temos uma alternativa</p><p>incorreta (na minha opinião, a banca acabou anulando a questão!)</p><p>Gabarito: Anulado</p><p>25.Cebraspe – Quality Assurance (QA) e Analista de Teste (BANRISUL)/2022</p><p>Em álgebra relacional, a operação que produz uma combinação das linhas de uma relação com</p><p>as linhas correspondentes de outra relação é conhecida como interseção.</p><p>Comentário:</p><p>A afirmação está incorreta. Em álgebra relacional, a operação que produz uma combinação das</p><p>linhas de uma relação com as linhas correspondentes de outra relação é conhecida como junção</p><p>(join). A junção combina as linhas das relações com base em uma condição de correspondência</p><p>específica, criando um resultado que contém informações de ambas as relações.</p><p>A operação de interseção (intersect) em álgebra relacional, por outro lado, retorna as linhas que</p><p>são comuns a duas relações, ou seja, as linhas que aparecem em ambas as relações.</p><p>Portanto, a descrição apresentada se refere à operação de junção, não à operação de interseção.</p><p>Gabarito: Errado</p><p>26.Cebraspe – Quality Assurance (QA) e Analista de Teste (BANRISUL)/2022</p><p>Na álgebra relacional, a operação projeção, representada pela letra grega π (pi), é classificada</p><p>como uma operação unária, por operar sobre apenas um conjunto de entrada.</p><p>Comentário:</p><p>Na álgebra relacional, a operação de projeção é uma operação unária, o que significa que ela</p><p>opera sobre apenas um conjunto de entrada. A projeção é representada pela letra grega π (pi) e</p><p>é usada para selecionar somente as colunas desejadas de uma relação (tabela).</p><p>A operação de projeção remove as colunas indesejadas da relação, mantendo apenas as colunas</p><p>que são especificadas na projeção. Por exemplo, se tivermos uma relação (tabela) chamada</p><p>"Funcionários" com colunas como "Nome", "Idade", "Cargo" e "Departamento", podemos usar</p><p>a operação de projeção para obter uma nova relação contendo apenas as colunas "Nome" e</p><p>"Cargo", ignorando as outras colunas.</p><p>A projeção é uma das operações fundamentais</p><p>da álgebra relacional e é amplamente utilizada</p><p>para extrair informações relevantes de uma base de dados sem a necessidade de retornar todos</p><p>os dados contidos nela.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>88</p><p>321</p><p>Gabarito: Certo</p><p>27.Cebraspe – Desenvolvimento de Sistemas (BANRISUL)/2022</p><p>A respeito de banco de dados, julgue os itens subsequentes.</p><p>Tabelas que estão na primeira forma normal permitem exigir atributos atômicos, sem</p><p>multivaloração e sem relações aninhadas.</p><p>Comentário:</p><p>A afirmação está correta. A primeira forma normal (1NF) é uma das regras de normalização em</p><p>bancos de dados relacionais. Ela estabelece que os valores em uma tabela devem ser atômicos,</p><p>ou seja, não devem conter estruturas complexas, como multivalores ou relações aninhadas.</p><p>Em outras palavras, em uma tabela que está na 1NF, cada atributo deve conter um único valor e</p><p>não deve representar uma lista de valores ou conter estruturas complexas, como arrays ou</p><p>objetos. Isso significa que não deve haver atributos multivalorados (com várias entradas) em uma</p><p>única coluna, e não deve haver atributos que contenham relações aninhadas (ou seja, outras</p><p>tabelas dentro de uma coluna).</p><p>A primeira forma normal é a base para a normalização de dados em níveis posteriores, como a</p><p>segunda forma normal (2NF) e a terceira forma normal (3NF), que tratam de questões adicionais</p><p>de redundância e dependência funcional em bancos de dados relacionais. Portanto, garantir que</p><p>uma tabela esteja na 1NF é um passo fundamental no projeto de bancos de dados normalizados.</p><p>Gabarito: Certo</p><p>28.Cebraspe – Quality Assurance (QA) e Analista de Teste (BANRISUL)/2022</p><p>A fim de evitar a criação de novos códigos para funções de acesso a dados, os bancos de dados</p><p>relacionais permitem procedimentos armazenados, os quais são blocos de código que podem</p><p>ser acessados com uma simples chamada de aplicativos.</p><p>Comentário:</p><p>A afirmação está correta.</p><p>Nos bancos de dados relacionais, os procedimentos armazenados são, de fato, blocos de código</p><p>que são armazenados no próprio banco de dados. Eles podem conter instruções SQL e lógica de</p><p>programação, e são frequentemente usados para realizar tarefas específicas, como consultas</p><p>complexas, manipulação de dados e operações de negócios.</p><p>Uma das principais vantagens dos procedimentos armazenados é que eles permitem encapsular</p><p>lógica de acesso a dados diretamente no banco de dados. Isso significa que os aplicativos</p><p>podem chamar esses procedimentos com uma simples chamada, sem a necessidade de criar</p><p>novos códigos para funções de acesso a dados repetitivas.</p><p>Essa abordagem tem benefícios, como a centralização da lógica de acesso a dados, melhor</p><p>desempenho devido à execução no próprio banco de dados e maior segurança, pois os</p><p>procedimentos armazenados podem ser protegidos contra acesso não autorizado.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>89</p><p>321</p><p>Portanto, a afirmação está correta ao destacar que os procedimentos armazenados em bancos de</p><p>dados relacionais permitem que a lógica de acesso a dados seja reutilizada por meio de</p><p>chamadas de aplicativos, evitando a criação redundante de novos códigos.</p><p>Gabarito: Certo</p><p>29.Ano: 2018 Banca: CESPE Assunto: Informática para Polícia Federal Cargo: Escrivão</p><p>Conteúdo Banco de dados Relacional</p><p>As informações anteriormente apresentadas correspondem aos campos de uma tabela de um</p><p>banco de dados, a qual é acessada por mais de um sistema de informação e também por outras</p><p>tabelas. Esses dados são utilizados para simples cadastros, desde a consulta até sua alteração, e</p><p>também para prevenção à fraude, por meio de verificação dos dados da tabela e de outros</p><p>dados em diferentes bases de dados ou outros meios de informação. Considerando essas</p><p>informações, julgue os itens que se seguem.</p><p>93 Se um sistema de informação correlaciona os dados da tabela em questão com outros</p><p>dados não estruturados, então, nesse caso, ocorre um processo de mineração de dados.</p><p>94 A referida tabela faz parte de um banco de dados relacional</p><p>95 O campo CPF é utilizado como chave primária e chave estrangeira.</p><p>96 Os dados armazenados na referida tabela são considerados não estruturados.</p><p>Comentário:</p><p>93. Essa questão foi dada pelo CESPE como correta. Eu discordo. Vamos lá ... supondo que</p><p>exista uma tabela (modelo relacional) com dados e que os dados são correlacionados com outros</p><p>dados não estruturados, que garantia eu tenho de que os processos de mineração de dados</p><p>foram utilizados de fato utilizados? ... NENHUMA!!!</p><p>O processo de mineração de dados, como descrito pelo CRISP-DM (fonte de referência padrão</p><p>para o assunto) exige um conjunto de ações específicas. Não existe nenhum elemento no texto,</p><p>além da detecção de fraudes que possa nos remeter a mineração de dados. A mineração de</p><p>dados exige que os dados sejam transformados e organizados com um mínimo de estrutura para</p><p>que possam ser analisados com sucesso.</p><p>Para mim, a correlação de dados estruturados e não estruturados é associada ao processo de Big</p><p>Data, a mineração de dados como sugere a alternativa, pode aparecer como parte desse</p><p>processo. Logo, na minha opinião temos uma alternativa errada, mas o CESPE julgou CORRETA.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>90</p><p>321</p><p>94. Para que a tabela seja considerada uma relação ela tem que possuir atributos atômicos ou</p><p>estar na primeira forma normal. Como não temos atributos compostos ou multivalorados</p><p>podemos considerar a normalização a 1FN. Sendo assim, podemos marcar a assertiva como</p><p>correta.</p><p>95. O campo CPF pela organização dos atributos pode ser usado como chave primária, contudo</p><p>não faz sentido falar de chave estrangeira quando temos apenas uma relação. Logo temos mais</p><p>uma alternativa incorreta.</p><p>96. Os dados armazenados no modelo relacional são dados estruturados. Logo, a alternativa está</p><p>incorreta.</p><p>Gabarito: 93.C(com ressalvas) 94.C 95.E 96.E</p><p>30. Ano: 2018 Banca: CESPE Assunto: Informática para Polícia Federal Cargo: Agente</p><p>Conteúdo Banco de dados</p><p>Considerando o modelo entidade-relacionamento (ER) precedente, julgue os seguintes itens,</p><p>relativos a banco de dados.</p><p>82 Considerando-se apenas o diagrama apresentado, infere-se que, na aplicação das regras para</p><p>a transformação do modelo ER em um modelo relacional, é necessário realizar a fusão das</p><p>tabelas referentes às entidades envolvidas no relacionamento.</p><p>Comentário:</p><p>Vamos comentar cada uma das afirmações acima.</p><p>82. Quando vamos passar do modelo ER para o relacional um relacionamento 1:N, precisamos</p><p>pegar a chave primária do lado 1 e colocar como chave estrangeira do lado</p><p>N. No exemplo, temos que usar a chave primária (código) associada ao tipo de produto e inserir</p><p>um novo campo na relação produto que será uma chave estrangeira e aponta para o código do</p><p>tipo de produto (na tabela tipo de produto). A fusão de tabelas geralmente é usada quando</p><p>temos um relacionamento obrigatório 1:1. Sendo assim, temos uma alternativa incorreta.</p><p>Gabarito: 82. E</p><p>31. Ano: 2018 Banca: CESPE Órgão: EBSERH Prova: Analista de Tecnologia da Informação</p><p>Com relação a banco de dados, julgue o item seguinte.</p><p>Em normalização, a primeira forma normal é caracterizada por uma tabela com a existência</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>91</p><p>321</p><p>obrigatória de uma chave primária e uma chave estrangeira.</p><p>Comentário:</p><p>O gabarito da questão 1 é errado. A primeira forma normal (1FN) é a primeira etapa do processo</p><p>de normalização que visa a redução da redundância e anomalias de atualização dos modelos de</p><p>dados.</p><p>A 1FN vai remover do modelo os atributos compostos e multivalorados. Assim, todos os</p><p>atributos</p><p>das tabelas passam a ser atômicos.</p><p>A chave primária vai orientar o banco de dados quanto a organização dos dados em uma tabela.</p><p>Ela tem a propriedade de identificar uma única linha da tabela. Em outras palavras, caso você me</p><p>informe a chave eu consigo te devolver todos os demais valores dos atributos de uma tabela.</p><p>Já a chave estrangeira serve para fazer uma ligação entre duas tabelas. Se uma tabela tem um</p><p>atributo que é chave estrangeira, significa que domínio (valores possíveis) desse atributo estão</p><p>presentes em uma coluna de outra tabela.</p><p>Gabarito: E</p><p>32. Ano: 2018 Banca: CESPE Órgão: TCM-BA Cargo: Auditor de Contas Questão: 09</p><p>Considerando os conceitos de banco de dados relacionais, assinale a opção correta a respeito</p><p>das propriedades de uma tupla.</p><p>a) A tupla tem o mesmo significado e as mesmas propriedades de uma tabela.</p><p>b) Os componentes de uma tupla são ordenados da esquerda para a direita.</p><p>c) Cada tupla contém exatamente um valor para cada um de seus atributos.</p><p>d) Um subconjunto de uma tupla não é considerado uma tupla.</p><p>e) Uma tupla nunca é vazia, seu grau pode variar de 1 até n.</p><p>Comentário:</p><p>Vimos informações que as tuplas são linhas de uma tabela. Elas, quando consideramos a</p><p>referência teórica e matemática do modelo relacional não são ordenadas e não se repetem.</p><p>Vamos agora analisar cada uma das alternativas acima.</p><p>A tupla é a linha da tabela. Representa uma instância ou um valor armazenado. Pense na tabela</p><p>aluno, cada aluno armazenado é uma tupla da tabela. Contudo, uma tabela pode ter atributos</p><p>que não são específicos da tupla como a quantidade máxima de registros. Logo, não podemos</p><p>definir o todo pela parte, nem podemos dizer que a forma do bolo é um bolo. Sendo assim, a</p><p>alternativa está incorreta.</p><p>a) As tuplas não são ordenadas de cima para baixo, nem seus atributos ou componentes são</p><p>ordenados da esquerda para a direita.</p><p>b) Pela definição de modelo relacional do Codd os atributos de uma relação devem ter valores</p><p>atômicos. Logo, cada coluna deve ter um valor dentro do seu respectivo domínio. Este pode ou</p><p>não aceitar valores nulos. Sendo assim, essa afirmação está certa.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>92</p><p>321</p><p>c) Um subconjunto de uma tupla é outra tupla, inclusive se lembrarmos da propriedade de</p><p>fechamento das operações de álgebra relacional, podemos perceber que o resultado de uma</p><p>projeção vai reduzir as tuplas de uma tabela aos atributos definidos na operação.</p><p>d) Uma tupla de uma tabela pode ser vazia (confesso que descobri isso com essa questão), ela é</p><p>conhecida como empty tuple ou nullary tuple. Para preencher valores desconhecidos usamos o</p><p>valor nulo que uma notação para vazio. Além disso ela representa um conjunto de atributos, a</p><p>quantidade de atributos de uma tupla é denominada grau e pode variar de 0 até n. Logo, temos</p><p>mais uma alternativa incorreta</p><p>Gabarito: C</p><p>33. Ano: 2015 Banca: CESPE Órgão: STJ Prova: Analista Judiciário - Análise de Sistemas de</p><p>Informação</p><p>Acerca de modelagem relacional e pontos de função, julgue o item a seguir.</p><p>O modelo relacional consiste em uma coleção ilimitada de tipos escalares e de um operador de</p><p>atribuição relacional que atribui valores às variáveis de relações que integram os componentes</p><p>desse modelo.</p><p>Comentário:</p><p>OK! O texto em questão parece Grego. Mas não é! Você já precisa apenas de um tradutor para</p><p>resolver a questão. Quando falamos em tipos escalares, estamos nos referindo a atributos que</p><p>têm valores atômicos e indivisíveis. Numa classificação normal um escalar se contrapõe a uma</p><p>matriz. Em uma matriz temos vários valores associados a uma instância.</p><p>Agora já temos uma coleção de tipos escalares que estabelecem os domínios dos atributos que</p><p>formam uma tabela ou uma relação. Certo!? Assim, construímos uma tabela! Vamos precisar,</p><p>então, inserir novos valores nesta tabela. Neste contexto, precisamos de um operador que</p><p>permita a inserção de novas linhas. Esse operador de atribuição vai permitir que essa associação</p><p>seja feita.</p><p>Vamos relembrar da nossa videoaula. Nela apresentamos um conjunto de componentes</p><p>definidos pelo Date para banco de dados relacionais. Segundo ele o modelo relacional consiste</p><p>em cinco componentes:</p><p>Uma coleção ilimitada de tipos escalares, incluindo em particular o tipo booleano ou valor</p><p>verdade. (TIPOS DE DADOS)</p><p>Um gerador de tipo de relação e uma interpretação pretendida para esses tipos de relações. (A</p><p>EXITÊNCIA DAS TABELAS)</p><p>Recursos para definição de RelVars desses tipos de relações gerados. (DDL – DEFINIÇÃO – UMA</p><p>LINGUAGEM PARA CONSTRUIR AS TABELAS)</p><p>Um operador de atribuição relacional para atribuição de valores de relações a essas RelVars.</p><p>(DML – MANIPULÇÃO/INSERSÃO DE VALORES NAS TABELAS)</p><p>Uma coleção ilimitada de operadores relacionais genéricos para derivar valores de relações a</p><p>partir de outros valores de relações. (OPERAÇÕES)</p><p>Gabarito: C</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>93</p><p>321</p><p>34. Banca: CESPE Ano: 2015 Órgão: TRE-MT Prova: Analista Judiciário - Análise de Sistemas</p><p>No modelo relacional formal,</p><p>a) os elementos de uma relação respeitam uma ordem matemática entre eles.</p><p>b) cada coluna em uma relação é uma tupla.</p><p>c) cada cabeçalho em uma relação é uma chave.</p><p>d) domínio é um conjunto de valores em que cada valor é indivisível.</p><p>e) uma coleção de dados é considerada como um arquivo plano.</p><p>Comentário:</p><p>Vamos retomar os conceitos para que você consiga fixar melhor cada um deles. Os elementos de</p><p>uma relação são as linhas (tuplas) e colunas (atributos), não existe uma ordem lógica sobre as</p><p>linhas, elas podem ser armazenadas em qualquer ordem na tabela.</p><p>Já na alternativa B o erro está em definir uma coluna como uma tupla. Sabemos que uma tupla é</p><p>a linha da tabela! Lembre-se do funk da tabela! Cada cabeçalho descreve o nome do atributo</p><p>referente a coluna. Não existe obrigatoriedade de um atributo ser chave. Sendo assim, a</p><p>alternativa C também está incorreta.</p><p>A alternativa D é a nossa resposta! Veja que o domínio é um escalar, logo indivisível. Cada tipo</p><p>de dados que estabelece um domínio vai restringir o conjunto de valores de uma coluna. Por</p><p>exemplo, você pode permitir que apenas caracteres sejam incluídos na coluna Nome.</p><p>Um arquivo plano é um arquivo tipo .txt. Semelhante àquele que você cria no Notepad do</p><p>Windows. A ideia de definir uma coleção de dados como um arquivo TXT não me parece</p><p>saudável. Sendo assim, a alternativa E está incorreta.</p><p>Gabarito: D</p><p>35. BANCA: CESPE ANO: 2015 ÓRGÃO: TRE-GO PROVA: TÉCNICO</p><p>DO JUDICIÁRIO - PROGRAMAÇÃO DE SISTEMAS</p><p>Julgue os seguintes itens, a respeito da modelagem de dados.</p><p>[65] Considere a seguinte situação hipotética. Em um banco de dados referente a um curso,</p><p>um aluno pode estar em mais de um curso ao mesmo tempo. Além disso, na tabela de cursos</p><p>realizados por aluno, estão presentes as chaves estrangeiras aluno e curso. Nessa situação, tanto</p><p>o código do curso como o código do aluno são chaves primárias nas tabelas curso e aluno,</p><p>respectivamente.</p><p>[66] Ao se excluir uma tupla de um banco de dados, pode-se violar a integridade referencial</p><p>desse banco por uma chave primária.</p><p>[67] Um conjunto de entidades que não possuem atributos suficientes para formar uma chave</p><p>primária é definido como um conjunto de entidades fortes.</p><p>[68] Uma chave primária identifica um único valor de uma tupla no banco de dados e não</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>94</p><p>321</p><p>possui mais de um atributo na tabela.</p><p>Comentário:</p><p>Vamos comentar cada um dos itens acima.</p><p>Analisando a alternativa 65 podemos observar que se trata de uma narrativa consistente e,</p><p>portanto, correta.</p><p>Na questão 66 temos um erro ao dizer que a exclusão de uma linha pode violar a integridade</p><p>referencial por</p><p>meio da chave primária, o certo seria dizer que pode existir uma violação de</p><p>integridade por meio da chave estrangeira. Em outras palavras podemos pensar da seguinte</p><p>forma: eu só posso excluir uma linha da tabela A se não existir nenhuma referência a ela em outra</p><p>tabela X. Essa referência é feita por meio de uma chave estrangeira, presente na outra tabela X.</p><p>Na questão 67 o erro é atribuir a entidade forte o conceito de entidade fraca.</p><p>A alternativa 68 trata da chave primária de uma tabela. Essa pode ser definida sobre um ou</p><p>vários atributos. Quando definida sobre mais de um atributo é necessário que a informação</p><p>contida no conjunto de atributos da chave seja única para cada linha da tabela. Sendo assim</p><p>podemos assinalar a alternativa incorreta.</p><p>Gabarito: C E E E.</p><p>36. Ano: 2015 Banca: CESPE Órgão: STJ Prova: Analista Judiciário - Análise de Sistemas de</p><p>Informação</p><p>Acerca de modelagem relacional, julgue o item a seguir.</p><p>O modelo relacional de dados consiste em um banco de dados percebido por seus usuários</p><p>como uma coleção de variáveis de relações que trata das questões lógicas e físicas da estrutura,</p><p>da integridade e da manipulação de dados.</p><p>Comentário:</p><p>Essa questão trata de um ponto que eu gostaria muito que você guardasse para prova: o modelo</p><p>relacional é um modelo lógico! Não é físico como sugere a questão. Modelos físicos fazem parte</p><p>da implementação dos sistemas de banco de dados. São definidos por programadores que</p><p>constroem os SGBD, algo complexo até para mim que trabalho com banco de dados há alguns</p><p>anos. Sendo assim, a questão está equivocada ao tentar associar o modelo relacional ao nível</p><p>físico.</p><p>Agora vamos tentar esclarecer outros pontos interessantes do texto. O modelo relacional define</p><p>o modelo como uma coleção de tabelas ou variáveis de relações. Veja que essas estruturas, as</p><p>tabelas, são de fato variáveis pois mudam ao longo do tempo. Pense que os preços dos produtos</p><p>em um supermercado variam, os funcionários contratados em uma empresa também se alteram</p><p>ao longo do tempo. Logo, as tabelas que armazenam essas informações são modificadas para</p><p>manter a consistência com os eventos de negócio, como a contratação de um novo funcionário.</p><p>Gabarito: E.</p><p>37. Ano: 2010 Banca: CESPE Órgão: MPU Prova: Analista de Informática - Banco de Dados</p><p>Acerca de administração de banco de dados relacionais, julgue os itens que se seguem.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>95</p><p>321</p><p>O termo integridade é utilizado em sistema de banco de dados com o significado de precisão,</p><p>correção ou validade. Nesse contexto, a integridade tem como função assegurar que os dados</p><p>no banco de dados sejam precisos e preservados contra atualizações válidas.</p><p>Comentário:</p><p>Essa questão apresenta uma pegadinha. Esse é um tipo de questão para as pessoas que sofrem</p><p>do mal da leitura dinâmica rústica errarem. Muita calma ao ler as questões do seu concurso. A</p><p>afirmação: “preservado contra atualizações válidas” distorce uma das funções do SGBD. O SGDB</p><p>deve ser utilizado para garantir a consistência do banco de dados. Preservando contra anomalias</p><p>de atualização ou atualizações inválidas. Logo, a alternativa está incorreta.</p><p>Gabarito: E.</p><p>38. Ano: 2008 Banca: CESPE Órgão: STF Prova: Analista Judiciário - Tecnologia da Informação</p><p>O armazenamento e a recuperação de grandes quantidades de dados é um trabalho importante</p><p>e muito explorado em um sistema gerenciador de banco de dados (SGBD). Com relação aos</p><p>conceitos que envolvem esse sistema, julgue os itens que se seguem.</p><p>Integridade referencial pode ser definida como uma condição imposta a um conjunto de</p><p>atributos de uma relação para que valores que apareçam nesse conjunto também apareçam em</p><p>um certo conjunto de atributos de uma outra relação.</p><p>Comentário:</p><p>Essa é uma questão um pouco antiga, tem quase 10 anos. Contudo, apresenta o conceito de</p><p>integridade referencial. Como eu falei, a integridade referencial (IR) permite que o</p><p>relacionamento entre entidades do modelo E-R seja expresso no modelo relacional. A ligação</p><p>entre as tabelas é feita por meio destas IRs. Vejam mais um exemplo desta situação na figura</p><p>abaixo:</p><p>Gabarito: C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>96</p><p>321</p><p>==1365fc==</p><p>39. Ano: 2014 Banca: CESPE Órgão: SUFRAMA Prova: Analista Técnico -</p><p>Tecnologia da Informação</p><p>Com relação aos sistemas gerenciadores de banco de dados (SGBD), julgue os itens a seguir.</p><p>A integridade semântica de um SGBD garante que os dados estejam sempre corretos em</p><p>relação ao domínio de aplicação.</p><p>Comentário:</p><p>A integridade semântica tem relação direta com as regras de negócio, ou seja, são restrições</p><p>impostas pelo funcionamento da organização. Um gerente não pode ganhar mais do que um</p><p>diretor, por exemplo. Essas restrições garantem que os dados estejam corretos em relação ao</p><p>domínio da aplicação. Sendo assim, a alternativa está correta.</p><p>Gabarito: C</p><p>40. BANCA: CESPE ANO: 2015 ÓRGÃO: TJDFT PROVA: PROGRAMAÇÃO DE SISTEMAS</p><p>Julgue os itens seguintes a respeito de banco de dados.</p><p>[61] Em uma tabela de um banco de dados relacional, se uma restrição de chave primária for</p><p>definida como composta de mais de uma coluna, os seus valores poderão ser duplicados em</p><p>uma coluna; no entanto, cada combinação de valores de todas as colunas na definição da</p><p>restrição de chave primária deve ser exclusiva.</p><p>Comentário:</p><p>Questão interessante, pois nos permite fazer um rápido comentário sobre as chaves. Uma chave</p><p>identifica unicamente uma linha de uma relação. Toda relação pode ter vários conjuntos de</p><p>atributos que podem ser escolhidos como chave primária. Cada uma dessas opções que se</p><p>caracterizam por ser uma superchave mínima, ou seja, não é possível retirar nenhum atributo sem</p><p>que o conjunto perca a propriedade de ser chave da relação, é denominada chave candidata. A</p><p>chave escolhida para ser a chave da relação é denominada chave primária. Ela pode ser</p><p>composta por um ou mais atributos.</p><p>A questão pede para analisarmos uma característica de chaves compostas por mais de um</p><p>atributo. Percebam que a unicidade dos valores deve considerar o conjunto dos atributos e não</p><p>um atributo individualmente. Sendo assim, a alternativa encontra-se correta.</p><p>Gabarito: C</p><p>41. Ano: 2018 Banca: CESPE Órgão: STJ Cargo: Técnico Judiciário – Suporte Técnico</p><p>Acerca de banco de dados, julgue os itens que se seguem.</p><p>73 Relacionamentos do tipo um-para-um podem ser representados em até três tabelas, de</p><p>acordo com a obrigatoriedade do relacionamento.</p><p>77 Na criação de uma tabela para os clientes de uma organização, os atributos de CPF e CNPJ,</p><p>para pessoas físicas e jurídicas, respectivamente, são a escolha mais indicada para representar a</p><p>chave primária (PK) da tabela.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>97</p><p>321</p><p>Comentário:</p><p>Uma das soluções para os relacionamentos 1:1, em especial quando não existe obrigatoriedade,</p><p>é criar uma tabela de ligação para armazenar as instâncias do relacionamento. Sendo assim,</p><p>podemos marcar nossa resposta para a afirmação 73 como correta.</p><p>Já a afirmação 77, seria mais interessante criar uma chave artificial para representar o</p><p>identificador do cliente. Lembre-se que CPF e CNPJ têm tamanho distintos e diversas</p><p>peculiaridades para validação do número. Assim a afirmação está incorreta.</p><p>Gabarito: C E</p><p>42. Ano: 2018 Banca: CESPE Órgão: ABIN Cargo: Área 08 Questão: 142</p><p>A respeito de sistemas gerenciadores de banco de dados, julgue os próximos itens.</p><p>142 Chave primária é o conjunto de um ou mais atributos para identificar uma tupla de uma</p><p>entidade.</p><p>Comentário:</p><p>O atributo (coluna) ou combinação de atributos que identifica de forma exclusiva cada tupla</p><p>(linha) de uma relação (tabela) é chamada de chave primária. Uma relação pode</p><p>ter apenas uma</p><p>chave primária, mas pode ser a combinação de mais de um atributo. A chave primária não pode</p><p>conter valores duplicados ou nulos. Se a chave primária for uma combinação de mais de um</p><p>atributo, a combinação de todos os valores de atributo deve ser exclusiva e nenhum dos</p><p>atributos pode conter valor nulo. Nulo significa valor desconhecido. Não significa zero ou</p><p>espaço, ou em branco. Desta forma a alternativa está correta.</p><p>Gabarito: C</p><p>43. Ano: 2018 Banca: CESPE Órgão: STM Cargo: Programação de Sistemas Questão: 61 a 65</p><p>Acerca dos conceitos de normalização de dados e dos modelos de dados, julgue os itens</p><p>subsequentes.</p><p>61 Uma tabela estará na segunda forma normal (2FN) quando, além de estar na terceira</p><p>forma normal (3FN), ela contiver dependências funcionais parciais.</p><p>62 A passagem à terceira forma normal (3FN) tem como objetivo principal gerar o modelo</p><p>lógico de dados; por isso, ela não visa eliminar redundância de dados, como ocorre com as</p><p>demais formas normais.</p><p>65 A transformação do esquema de tabela não normalizada em um esquema relacional na</p><p>primeira forma normal (1FN) consiste da eliminação das tabelas aninhadas.</p><p>Comentário:</p><p>Vamos comentar cada uma das alternativas acima.</p><p>Primeiramente a hierarquia entre as formas normais é crescente, para estar na segunda é preciso</p><p>estar na primeira, para estar na terceira é necessário que esteja na segunda e assim por diante.</p><p>Veja que a afirmação da alternativa vai no sentido oposto. Logo, temos uma alternativa incorreta.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>98</p><p>321</p><p>A passagem para a terceira forma normal tem como objetivo eliminar as dependências funcionais</p><p>transitivas. O que está escrito na assertiva não chega nem perto da definição. Sendo assim, a</p><p>alternativa está errada.</p><p>65. Essa questão do aninhamento de tabela associada à primeira forma normal nem sempre é</p><p>muito clara. Contudo, podemos perceber que, quando temos atributos compostos e</p><p>multivalorados, há perda de atomicidade dos atributos. E a composição de diversos atributos</p><p>atômicos pode ser vista como outra tabela. Logo, acabamos por ter uma tabela dentro da outra.</p><p>Gabarito: E E C</p><p>44. BANCA: CESPE ANO: 2015 ÓRGÃO: CGE-PI PROVA:</p><p>AUDITOR GOVERNAMENTAL - TECNOLOGIA DA INFORMAÇÃO</p><p>A respeito de banco de dados, julgue os itens subsequentes.</p><p>Para normalizar, conforme primeira forma, uma tabela em um banco de dados, é preciso criar</p><p>chaves estrangeiras que representem a ligação entre elas.</p><p>Comentário:</p><p>A primeira forma normal deve eliminar atributos compostos e multivalorados. Vejam que no caso</p><p>dos atributos compostos não é necessário criar outra relação, basta fracionar as partes em</p><p>atributos atômicos. Quando estamos removendo atributos multivalorados podemos utilizar outra</p><p>tabela para listar os diversos valores e associá-los por meio da chave. Ou seja, nem sempre é</p><p>necessário usar chaves estrangeiras quando normalizamos para a 1FN</p><p>Gabarito: E</p><p>45. BANCA: CESPE ANO: 2013 ÓRGÃO: CRPM PROVA: ANALISTA</p><p>EM GEOCIÊNCIAS - SISTEMAS DE INFORMAÇÃO</p><p>No que concerne a mapeamento de dados lógico e físico e a elaboração e implantação de</p><p>projeto de banco de dados, julgue os seguintes itens.</p><p>No processo de implantação de um projeto de banco de dados, devem ser utilizadas as</p><p>operações de álgebra relacional de dados para estabelecer as restrições de cardinalidade e</p><p>relacionamento entre o conjunto de entidades.</p><p>Comentário:</p><p>As operações da álgebra relacional fornecem subsídio matemático para execução de operações</p><p>no modelo relacional. Elas são utilizadas pelos desenvolvedores de SGBDs para estruturar as</p><p>operações sobre as tabelas em bancos de dados relacionais.</p><p>A cardinalidade entre os relacionamentos e os relacionamentos em si são implementados por</p><p>meio das restrições de integridade e da organização ou estruturação dos dados nas diversas</p><p>tabelas do modelo. Um relacionamento N para N precisa de uma tabela de ligação que é</p><p>formada pelas chaves de cada uma das tabelas que participam do relacionamento.</p><p>Gabarito: E</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>99</p><p>321</p><p>46. BANCA: CESPE ANO: 2013 ÓRGÃO: ANTT PROVA:</p><p>ANALISTA ADMINISTRATIVO - DESENVOLVIMENTO DE SISTEMAS</p><p>Julgue os itens subsequentes, relativos a banco de dados.</p><p>A linguagem padrão de consulta SQL (structured query language) utiliza uma combinação de</p><p>construtores em álgebra e cálculo relacional.</p><p>Comentário:</p><p>O cálculo relacional é considerado a base para linguagem SQL, e a álgebra relacional é usada</p><p>nos detalhes internos de muitas implementações de banco de dados para processamento e</p><p>otimização de consulta. Alternativa correta!</p><p>Gabarito: C</p><p>47. BANCA: CESPE ANO: 2013 ÓRGÃO: TCE-ES PROVA:</p><p>ANALISTA ADMINISTRATIVO - INFORMÁTICA</p><p>O conjunto de operações cujo resultado seja uma nova relação e que envolve seleção, projeção,</p><p>união e produto cartesiano é denominado</p><p>A) mapeamento de cardinalidades.</p><p>B) álgebra relacional.</p><p>C) generalização.</p><p>D) chave primária.</p><p>E) herança.</p><p>Comentário:</p><p>Essa questão você deve fazer rapidamente e ganhar tempo na hora da prova para outras</p><p>questões mais complexas. Vejam que ela basicamente quer saber se você conhece as operações</p><p>da álgebra relacional.</p><p>Gabarito: B</p><p>48. CESPE - Auditor de Controle Externo (TCE-PA)/Informática/Analista</p><p>de Sistema/2016</p><p>Julgue o item que se segue, relativo a modelagem de dados.</p><p>Dois diagramas de entidade de relacionamento são equivalentes se possuem entidades e</p><p>relacionamentos que geram o mesmo esquema de banco de dados.</p><p>Comentário:</p><p>Um diagrama E-R descreve o modelo de dados de um sistema com um grande nível de</p><p>abstração, independentemente do SGBD a ser escolhido. Um esquema de bancos de dados é a</p><p>descrição da estrutura em uma linguagem formal suportada pelo SGBD e refere-se à organização</p><p>de dados (dividido em tabelas no caso de BDs relacionais). Logo, mesmo que diagramas E-R</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>100</p><p>321</p><p>sejam diferentes, eles são considerados equivalentes caso gerem o mesmo esquema de banco</p><p>de dados.</p><p>Gabarito: C</p><p>49. Ano: 2016 Banca: CESPE Órgão: TCE-SC Cargo: Auditor de TI</p><p>Com relação aos bancos de dados relacionais, julgue os próximos itens.</p><p>94 O catálogo de um sistema de gerenciamento de banco de dados relacional armazena a</p><p>descrição da estrutura do banco de dados e contém informações a respeito de cada arquivo, do</p><p>tipo e formato de armazenamento de cada item de dado e das restrições relativas aos dados.</p><p>95 Denomina-se visão uma tabela única derivada de uma ou mais tabelas básicas do banco.</p><p>Essa tabela existe em forma física e viabiliza operações ilimitadas de atualização e consulta.</p><p>96 Em bancos de dados relacionais, as tabelas que compartilham um elemento de dado em</p><p>comum podem ser combinadas para apresentar dados solicitados pelos usuários.</p><p>Comentário:</p><p>O dicionário de dados ou catálogo de dados contém as descrições das estruturas dos objetos</p><p>presentes na base de dados. Presente em todos os SGBDs relacionais ele guarda os metadados</p><p>ou informações a respeito dos objetos armazenados. Podemos marcar como correta a assertiva</p><p>94.</p><p>A definição de visão presente no padrão SQL/ANSI é de uma estrutura temporária que armazena</p><p>informações advindas de uma ou mais tabelas. A visão não é armazenada fisicamente em disco e</p><p>é removida ou apagada ao final da sua utilização. Sendo assim, a alternativa 95 encontra-se</p><p>incorreta.</p><p>Dentro do contexto de bancos de dados relacionais, é possível usar as operações de junção.</p><p>Essas operações utilizam atributos que operam sobre o mesmo domínio presentes em cada uma</p><p>das tabelas. Esses atributos são utilizados para juntar ou relacionar uma tabela com a outra,</p><p>sempre que tivermos os mesmos valores em ambas as tabelas. Vejam que temos mais uma vez</p><p>uma alternativa</p><p>correta.</p><p>Gabarito: C E C.</p><p>50. Ano: 2015 Banca: CESPE Órgão: TRE-PI – Questão 56</p><p>Acerca da aplicação dos princípios de normalização (Formas Normais), assinale a opção correta.</p><p>A) A aplicação da 1FN se dá se e somente se, para todo modelo, for aplicada a Forma Normal de</p><p>Boyce-Codd (ou BCNF).</p><p>B) A 2FN é baseada no conceito de dependência funcional total, isto é, todo atributo não</p><p>primário de uma entidade tem dependência funcional total da chave primária.</p><p>C) A Terceira Forma Normal (3FN) requer que não haja dependências intransitivas de atributos</p><p>que não sejam com toda chave candidata.</p><p>D) A aplicação da Primeira Forma Normal (1FN) requer que, ao fim da sua aplicação, todos os</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>101</p><p>321</p><p>atributos de uma relação sejam multivalorados ou estejam em tabelas aninhadas, o que garante</p><p>grupos repetidos de dados, reduzindo o tamanho físico do banco de dados.</p><p>E) A Segunda Forma Normal (2FN) requer que, ao fim da sua aplicação, não haja dependências</p><p>transitivas de atributos que não sejam com toda chave candidata.</p><p>Comentários:</p><p>Vamos comentar cada uma das alternativas acima.</p><p>Vimos durante a aula que a 1FN está relacionada a eliminação de atributos compostos ou</p><p>multivalorados, e que a forma normal de Boyce-Codd é aplicada após a 3FN. Desta forma, a</p><p>alternativa A se encontra incorreta.</p><p>Sabemos que a caraterística que nos leva a considerar a existência de um problema com a</p><p>segunda forma normal é a presença de chave composta na relação. Se parte dessa chave</p><p>determinar algum outro atributo da tabela temos uma dependência funcional parcial, o que fere</p><p>a segunda forma normal. Temos que fazer com que todo atributo nesta condição seja</p><p>decomposto de forma a evitar problemas com a 2FN. A alternativa está correta, essa é nossa</p><p>resposta!</p><p>A terceira forma normal trata da eliminação das dependências transitivas. Desta forma a</p><p>alternativa está incorreta, pois fala em dependências intransitivas.</p><p>A primeira forma normal, como falamos na alternativa “A”, visa eliminar atributos atômicos, a</p><p>alternativa D, portanto, encontra-se incorreta.</p><p>Já na alternativa E, a presença de dependências transitivas é eliminada pela terceira forma</p><p>normal e não pela segunda como sugere a questão.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>102</p><p>321</p><p>Gabarito: B</p><p>51. BANCA: CESPE ANO: 2015 ÓRGÃO: MPOG PROVA: ANALISTA - ANALISTA EM</p><p>TECNOLOGIA DA INFORMAÇÃO</p><p>A respeito de modelo entidade-relacionamento e normalização, julgue os itens subsequentes.</p><p>113 Em relações normalizadas, na primeira forma normal, toda tupla em toda relação contém</p><p>apenas um único valor, do tipo apropriado, em cada posição de atributo.</p><p>114 Sabendo que, nos relacionamentos ternários, a cardinalidade refere-se a pares de</p><p>entidades, em um relacionamento ternário R entre três entidades A, B e C, a cardinalidade</p><p>máxima de A e B dentro de R indica quantas ocorrências de C podem estar associadas a um par</p><p>de ocorrências de A e B.</p><p>Comentário:</p><p>A primeira forma normal diz que todo atributo deve ser atômico. Ou de outra forma, nenhum</p><p>atributo pode ser composto ou multivalorado. A partir dessa definição podemos dizer que em</p><p>toda tupla cada um dos seus atributos deve ter apenas um valor de um tipo apropriado. A</p><p>alternativa 113 está correta. Aproveitando para dizer que a primeira forma normal é parte da</p><p>definição do modelo relacional. Ou seja, se eu disser que uma tabela do modelo relacional ela</p><p>está automaticamente na primeira forma normal.</p><p>Uma propriedade importante de um relacionamento é de quantas ocorrências de uma entidade</p><p>podem estar associadas a uma determinada ocorrência através do relacionamento. Esta</p><p>propriedade é chamada de Cardinalidade. Num relacionamento ternário a cardinalidade é</p><p>definida pelo relacionamento de uma entidade com as demais conjuntamente. Vejam a figura</p><p>abaixo:</p><p>Gabarito: C C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>103</p><p>321</p><p>52. BANCA: CESPE ANO: 2015 ÓRGÃO: CGE-PI PROVA:</p><p>AUDITOR GOVERNAMENTAL - TECNOLOGIA DA INFORMAÇÃO</p><p>A respeito de banco de dados, julgue os itens subsequentes.</p><p>- Um modelo de dados pode ser usado para representar os tipos de dados existentes em um</p><p>banco de dados de um sistema online de reservas.</p><p>- Em banco de dados relacional, os atributos representam as entidades do mundo real.</p><p>- Em um relacionamento de tabelas de um banco de dados relacional, a chave estrangeira serve</p><p>para referenciar uma entidade dentro de outra tabela, facilitando, assim, a busca e o</p><p>agrupamento dessas entidades.</p><p>- Para normalizar, conforme primeira forma, uma tabela em um banco de dados, é preciso criar</p><p>chaves estrangeiras que representem a ligação entre elas.</p><p>- Em um sistema gerenciador de banco de dados, a linguagem de definição de dados possibilita</p><p>a criação das tabelas bem como a autorização de acesso aos dados para determinados usuários</p><p>do banco de dados.</p><p>Comentário:</p><p>Vamos analisar cada uma das alternativas acima.</p><p>Comentário 96. Um modelo de banco de dados pode representar diferentes tipos de negócios,</p><p>um deles, definido inclusive no livro do Silberschatz, é o sistema de reservas on-line. Alternativa</p><p>correta.</p><p>Comentário 97. Os atributos representam as características de uma entidade e não a entidade</p><p>em si. Logo, alternativa incorreta.</p><p>Comentário 98. A assertiva define com perfeição o motivo da existência das chaves estrangeiras.</p><p>Comentário 99. A normalização para primeira forma normal é feita eliminando os atributos</p><p>compostos e multivalorados. Veremos mais sobre normalização na próxima aula.</p><p>Comentário 100. Segundo o livro do Navathe: “Quando o projeto de um banco de dados é</p><p>finalizado e um SGBD é escolhido para implementá-lo, o primeiro passo é especificar esquemas</p><p>conceituais e internos para o banco de dados e quaisquer mapeamento entre os dois. Em muitos</p><p>SGBDs, onde não é mantida nenhuma separação estrita de níveis, uma linguagem, chamada</p><p>linguagem de definição de dados (DDL) é usada pelo DBA e pelos projetistas de banco de dados</p><p>para definir os dois esquemas". A DDL SQL inclui comandos para especificar direitos de acesso</p><p>para relações e views.</p><p>Gabarito: C E C E C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>104</p><p>321</p><p>QUESTÕES COMENTADAS - CESGRANRIO</p><p>1. (CESGRANRIO/IPEA/2024/Infraestrutura) A tabela PESSOA, criada segundo os conceitos</p><p>do Modelo Relacional para a realização de estudos na área da saúde, possui os seguintes</p><p>atributos:</p><p>PESSOA (CPF, nome, sexo, idade, RG, renda, município-residência, UF-residência) A chave</p><p>primária dessa tabela é o atributo CPF.</p><p>Nesse contexto, considere as seguintes dependências funcionais (DF) definidas para alguns dos</p><p>atributos da tabela PESSOA:</p><p>Considerando-se a definição da primeira, da segunda e da terceira formas normais, 1FN, 2FN e</p><p>3FN, respectivamente, a tabela PESSOA NÃO está na</p><p>(A)  1FN, devido à DF CPF→ nome</p><p>(B)  2FN, devido à DF CPF→ RG</p><p>(C)  2FN, devido à DF RG→ nome</p><p>(D)  3FN, devido à DF CPF→ renda</p><p>(E)  3FN, devido à DF Município-residência→ UF-residência</p><p>Comentário:</p><p>Para determinar se a tabela PESSOA está na 1FN, 2FN e 3FN, devemos analisar as dependências</p><p>funcionais fornecidas.</p><p>1. Primeira Forma Normal (1FN): Uma tabela está na 1FN se todos os seus atributos</p><p>possuírem valores atômicos, ou seja, não houver atributos multivalorados ou atributos que</p><p>possuam conjuntos de valores. Como todos os atributos são simples, a tabela PESSOA está na</p><p>1FN.</p><p>2. Segunda Forma Normal (2FN): Uma tabela está na 2FN se estiver na 1FN e se todos os</p><p>seus atributos não-chave dependerem completamente da chave primária. Como não existe chave</p><p>composta, a tabela PESSOA também está</p><p>na 2FN.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>105</p><p>321</p><p>3. Terceira Forma Normal (3FN): Uma tabela está na 3FN se estiver na 2FN e se todos os</p><p>seus atributos não-chave dependerem diretamente da chave primária, sem depender de outros</p><p>atributos não-chave.</p><p>● A dependência funcional CPF -> renda não viola a 3FN, pois a renda é um atributo</p><p>não-chave que depende diretamente da chave primária CPF.</p><p>● A dependência funcional Município-residência -> UF-residência viola a 3FN, pois ambos</p><p>são atributos não-chave, logo, temos uma dependência transitiva.</p><p>Portanto, a resposta correta é a alternativa: (E) 3FN, devido à DF Município-residência →</p><p>UF-residência</p><p>Gabarito: E</p><p>2. CESGRANRIO/IPEA/2024/Ciência de Dados</p><p>Para um estudo do tema Educação, foram coletados dados de escolas e de professores em</p><p>todos os municípios brasileiros.</p><p>Esses dados foram armazenados em duas relações (tabelas), organizadas de acordo com o</p><p>seguinte modelo relacional:</p><p>ESCOLA (cod-escola, nome-escola, cod-municipio, quantidade-alunos)</p><p>PROFESSOR (CPF, nome-prof, data-nascimento, cod-municipio-residencia, cod-escola-prof)</p><p>A chave primária de ESCOLA é cod-escola, e a de PROFESSOR é CPF. A coluna cod-escola-prof</p><p>em PROFESSOR é uma chave estrangeira e indica em que escola o professor leciona. Considere</p><p>a utilização dos operadores de Projeção (p ou PROJETE), Seleção (σ ou SELECIONE) e Junção (</p><p>ou JUNTE) da Álgebra Relacional.</p><p>Que sequência de operações, em Álgebra Relacional, produz como resultado uma relação R-X</p><p>com CPF e nome dos professores que NÃO residem no mesmo município onde lecionam?</p><p>(A) R-X ← SELECIONE CPF, nome-prof de PROFESSOR onde cod-municipio-residencia é</p><p>diferente de cod-municipio</p><p>(B) R-A ← JUNTE PROFESSOR a ESCOLA onde cod-municipio-residencia é diferente de</p><p>cod-municipio R-X← PROJETE CPF, nome-prof de R-A</p><p>(C) R-A← SELECIONE CPF, nome-prof de PROFESSOR</p><p>R-X← JUNTE R-A a ESCOLA onde cod-escola-prof = cod-escola</p><p>(D) R-A← JUNTE PROFESSOR a ESCOLA onde cod-escola-prof = cod-escola</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>106</p><p>321</p><p>R-B← SELECIONE R-A onde cod-municipio-residencia é diferente de cod-municipio</p><p>R-X← PROJETE CPF, nome-prof de R-B</p><p>(E) R-A← PROJETE CPF, nome-prof de PROFESSOR</p><p>R-B← JUNTE R-A a ESCOLA onde cod-escola-prof = cod-escola</p><p>R-X← SELECIONE R-B onde cod-municipio-residencia é diferente de cod-municipio</p><p>Comentário:</p><p>Vamos analisar a opção (D):</p><p>(D) R-A← JUNTE PROFESSOR a ESCOLA onde cod-escola-prof = cod-escola</p><p>R-B← SELECIONE R-A onde cod-municipio-residencia é diferente de cod-municipio</p><p>R-X← PROJETE CPF, nome-prof de R-B</p><p>Nessa sequência:</p><p>1. Na operação de junção (JOIN) entre as tabelas PROFESSOR e ESCOLA, selecionamos</p><p>apenas as linhas em que o código da escola do professor é igual ao código da escola onde</p><p>leciona.</p><p>2. Em seguida, selecionamos (SELECIONE) apenas as linhas em que o código do município</p><p>de residência do professor é diferente do código do município da escola.</p><p>3. Por fim, projetamos (PROJETE) apenas as colunas CPF e nome-prof da relação resultante.</p><p>Portanto, a opção correta é a letra (D).</p><p>Gabarito: D</p><p>3. CESGRANRIO/IPEA/2024/Infraestrutura</p><p>Considere que um modelo conceitual de dados foi criado, por meio da utilização de um</p><p>Diagrama de Entidades e Relacionamentos (DER), contendo as entidades UF e EMPRESA, e um</p><p>relacionamento entre essas duas entidades denominado GERACAO. O objetivo é representar a</p><p>potência instalada total, em kW, por cada empresa em cada UF. Em uma UF, pode haver várias</p><p>empresas com geração de energia, e cada empresa pode gerar energia em várias UF.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>107</p><p>321</p><p>O atributo identificador na entidade UF é cod; o atributo identificador na entidade EMPRESA é</p><p>CNPJ. Foram criadas tabelas, segundo o Modelo Relacional, derivadas do DER apresentado.</p><p>O conjunto de tabelas corretamente derivadas do DER apresentado nas quais as chaves</p><p>primárias encontram-se sublinhadas é</p><p>(A)  UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social); GERACAO (cod, CNPJ, potencia)</p><p>(B)  UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social, potencia)</p><p>(C)  UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social, potencia, UF)</p><p>(D)  UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social); GERACAO (potencia)</p><p>(E) UF (cod, nome, populacao, CNPJ); EMPRESA (CNPJ, razao-social, potencia)</p><p>Comentário:</p><p>Analisando as informações fornecidas sobre o modelo conceitual de dados e as entidades</p><p>envolvidas (UF, EMPRESA e GERACAO), podemos derivar as tabelas do modelo relacional com</p><p>as chaves primárias sublinhadas da seguinte maneira:</p><p>● A entidade UF possui os atributos cod (atributo identificador), nome e população.</p><p>● A entidade EMPRESA possui os atributos CNPJ (atributo identificador), razao-social.</p><p>● O relacionamento GERACAO associa as entidades UF e EMPRESA, indicando a potência</p><p>de geração para cada combinação UF-EMPRESA.</p><p>Portanto, as tabelas derivadas seriam:</p><p>(A) UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social); GERACAO (cod, CNPJ, potencia)</p><p>● Na tabela UF, o atributo cod é a chave primária.</p><p>● Na tabela EMPRESA, o atributo CNPJ é a chave primária.</p><p>● Na tabela GERACAO, cod e CNPJ são chaves estrangeiras referenciando as chaves</p><p>primárias das tabelas UF e EMPRESA, respectivamente, e potencia é um atributo</p><p>representando a potência de geração.</p><p>Portanto, a resposta correta é a opção: (A) UF (cod, nome, populacao); EMPRESA (CNPJ,</p><p>razao-social); GERACAO (cod, CNPJ, potencia)</p><p>Gabarito: A</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>108</p><p>321</p><p>4. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de Sistemas/Processos de</p><p>Negócios/2023</p><p>A modelagem de dados é uma etapa importante e essencial em qualquer projeto de</p><p>desenvolvimento ou de manutenção de software. Dentre as modelagens utilizadas em projetos</p><p>de banco de dados, está a modelagem conceitual, que</p><p>a)  descreve detalhes técnicos de implementação, como índices e partições de tabelas.</p><p>b)  envolve a otimização de consultas e a escolha de índices apropriados para melhorar o</p><p>desempenho.</p><p>c)  prioriza o projeto da estrutura física das tabelas e dos relacionamentos no banco de dados.</p><p>d)  é uma representação visual dos detalhes internos de armazenamento de dados em disco.</p><p>e)  é independente do Sistema de Gerenciamento de Banco de Dados (SGBD), envolvendo a</p><p>definição de entidades, de atributos e de relacionamentos.</p><p>Comentário:</p><p>A reposta correta é letra E. A modelagem conceitual é uma fase fundamental no processo de</p><p>projeto de banco de dados, onde o foco está na representação abstrata e independente de</p><p>tecnologia do domínio do negócio. Nesse estágio, são identificadas as entidades relevantes, seus</p><p>atributos e os relacionamentos entre elas. O objetivo é criar uma representação clara e</p><p>compreensível do sistema, independentemente do Sistema de Gerenciamento de Banco de</p><p>Dados (SGBD) que será utilizado.</p><p>A opção correta (e) destaca a característica essencial da modelagem conceitual, que é a sua</p><p>independência do SGBD. Isso significa que a modelagem conceitual se concentra na semântica e</p><p>na estrutura lógica dos dados, sem considerar as particularidades técnicas de implementação,</p><p>como índices, partições ou otimizações de consulta.</p><p>Ao desenvolver a modelagem conceitual, os analistas e designers podem colaborar com os</p><p>stakeholders do negócio para garantir uma compreensão precisa dos requisitos e das relações</p><p>entre as entidades. Isso facilita a comunicação entre a equipe técnica e os usuários finais,</p><p>contribuindo para um projeto de banco de dados mais bem-sucedido. Após a conclusão da</p><p>modelagem conceitual, as etapas subsequentes, como</p><p>a modelagem lógica e física, podem ser</p><p>desenvolvidas com base nesse alicerce sólido.</p><p>Gabarito: E</p><p>5. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de Sistemas/Processos de</p><p>Negócios/2023</p><p>A Álgebra Relacional possui vários operadores binários. Dentre os operadores listados abaixo, o</p><p>único NÃO binário é a(o)</p><p>a)  divisão</p><p>b)  projeção</p><p>c)  junção natural</p><p>d)  junção externa esquerda</p><p>e)  produto cartesiano</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>109</p><p>321</p><p>Comentário:</p><p>A Álgebra Relacional é uma linguagem formal utilizada para manipular dados em bancos de</p><p>dados relacionais. Ela inclui diversos operadores, sendo alguns deles binários, o que significa que</p><p>operam sobre dois operandos, enquanto outros são unários, operando sobre um único</p><p>operando. Vamos entender melhor alguns desses operadores:</p><p>1. Projeção (Unário): Representado pelo símbolo grego π, o operador de projeção é unário.</p><p>Ele é utilizado para selecionar um subconjunto específico de colunas de uma tabela, criando uma</p><p>nova tabela resultante apenas com as colunas desejadas.</p><p>Exemplo: Se temos uma tabela com colunas (A, B, C) e aplicamos a projeção π(A, B), obteremos</p><p>uma nova tabela apenas com as colunas A e B.</p><p>2. Produto Cartesiano (Binário): Representado pelo símbolo ×, o produto cartesiano é um</p><p>operador binário. Ele combina todas as linhas de duas tabelas, resultando em uma tabela que</p><p>contém todas as possíveis combinações de linhas entre as duas tabelas.</p><p>Exemplo: Se temos duas tabelas A e B, o produto cartesiano A × B combina cada linha de A com</p><p>cada linha de B.</p><p>3. Junção (Binário): A junção é um operador binário que combina linhas de duas tabelas com</p><p>base em uma condição de igualdade entre colunas especificadas. A junção natural (representada</p><p>pelo símbolo ⨝) é um tipo específico de junção onde as colunas envolvidas na igualdade são</p><p>aquelas que têm o mesmo nome em ambas as tabelas.</p><p>Exemplo: Se temos duas tabelas A e B, a junção A ⨝ B combina as linhas de A e B onde as</p><p>colunas especificadas são iguais.</p><p>4. Divisão (Binário): Representada pelo símbolo ÷, a divisão é um operador binário menos</p><p>comum. É utilizado para encontrar valores comuns em duas colunas, onde os valores</p><p>correspondentes em outras colunas também são iguais.</p><p>Exemplo: Se temos duas tabelas A e B, a divisão A ÷ B retorna os valores de uma coluna em A</p><p>que têm correspondência com todos os valores em outra coluna de B.</p><p>Portanto, a projeção é o único operador mencionado que é unário, pois atua sobre um único</p><p>operando (uma tabela) para selecionar colunas específicas. Os demais operadores (produto</p><p>cartesiano, junção e divisão) são binários, pois operam sobre dois operandos (duas tabelas).</p><p>Gabarito: B</p><p>6. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de Sistemas/Processos de</p><p>Negócios/2023</p><p>A normalização é um processo muito utilizado na organização de bancos de dados. A esse</p><p>respeito, o objetivo principal da normalização das estruturas de dados em bancos de dados</p><p>relacionais é</p><p>a)  eliminar as duplicações de dados e garantir que cada informação seja armazenada em uma</p><p>única tabela.</p><p>b)  aumentar a redundância dos dados, garantindo que informações essenciais sejam</p><p>armazenadas em várias tabelas.</p><p>c)  reduzir a quantidade de dados armazenados no banco de dados, resultando em uma</p><p>economia de espaço de armazenamento.</p><p>d)  simplificar as consultas complexas e otimizar a recuperação de informações do banco de</p><p>dados, resultando em um melhor desempenho.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>110</p><p>321</p><p>e)  criar uma representação visual da estrutura física dos dados no disco, facilitando o acesso</p><p>direto e rápido às informações armazenadas.</p><p>Comentário:</p><p>O objetivo principal da normalização das estruturas de dados em bancos de dados relacionais é:</p><p>a) eliminar as duplicações de dados e garantir que cada informação seja armazenada em uma</p><p>única tabela.</p><p>A normalização é um processo utilizado no design de bancos de dados relacionais para organizar</p><p>e estruturar as tabelas de modo a reduzir a redundância e melhorar a eficiência na manipulação</p><p>dos dados. O principal objetivo da normalização é evitar anomalias de atualização, inserção e</p><p>exclusão, além de facilitar a manutenção do banco de dados.</p><p>O processo de normalização envolve a aplicação de regras específicas para garantir que as</p><p>tabelas estejam organizadas de maneira lógica e eficiente. As regras de normalização são</p><p>geralmente divididas em formas normais, sendo as mais comuns a Primeira Forma Normal (1FN),</p><p>a Segunda Forma Normal (2FN) e a Terceira Forma Normal (3FN). Existem formas normais</p><p>adicionais, como a Forma Normal de Boyce-Codd (BCNF) e a Quarta Forma Normal (4FN).</p><p>Aqui estão algumas das principais regras e conceitos relacionados à normalização:</p><p>1. Primeira Forma Normal (1FN): Uma tabela está na 1FN se todos os seus atributos são</p><p>atômicos (indivisíveis) e não há repetições de grupos de atributos.</p><p>2. Segunda Forma Normal (2FN): Uma tabela está na 2FN se estiver na 1FN e se todos os</p><p>atributos não chave forem totalmente dependentes da chave primária.</p><p>3. Terceira Forma Normal (3FN): Uma tabela está na 3FN se estiver na 2FN e se todos os</p><p>atributos não chave são mutuamente independentes entre si.</p><p>O processo de normalização geralmente envolve a decomposição de tabelas em tabelas</p><p>menores e mais especializadas para eliminar dependências e reduzir a redundância. Embora a</p><p>normalização seja crucial para garantir a consistência e a integridade dos dados, é importante</p><p>equilibrar o nível de normalização com o desempenho do sistema, uma vez que a normalização</p><p>excessiva pode resultar em consultas mais complexas e lentas.</p><p>Gabarito: A</p><p>7. CESGRANRIO - Esc BB/BB/Agente de Tecnologia/2023</p><p>A Figura abaixo exibe um diagrama E-R que contém duas entidades (ET1 e XT2) e uma relação</p><p>(S).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>111</p><p>321</p><p>Admita a existência de um banco de dados relacional composto pelos conjuntos ET1 e XT2,</p><p>oriundos do mapeamento das entidades ET1 e XT2. Parte do estado atual desse banco de dados</p><p>é definido pelos seguintes conjuntos:</p><p>ET1={e1,e2,e4}</p><p>XT2={t1,t2,t3}</p><p>Qual conjunto completa o banco de dados em questão, de modo a atender a todas as regras</p><p>relativas à relação S?</p><p>a)  S={ }</p><p>b)  S={ (e1,t1), (e2,t2), (e2,t3) }</p><p>c)  S={ (e1,t1), (e2,t2), (e4,t1) }</p><p>d)  S={ (e1,t1), (e1,t2), (e4,t3), (e4,t2) }</p><p>e)  S={ (e1,t3), (e2,t2), (e4,t1) }</p><p>Comentário:</p><p>Para uma melhor compreensão da questão, é crucial entender o diagrama e as cardinalidades</p><p>envolvidas. De maneira mais específica, o diagrama e as cardinalidades estabelecem o seguinte:</p><p>Cada elemento de ET1 está associado a pelo menos um elemento de XT2, podendo cada</p><p>elemento de ET1 estar vinculado a vários elementos de XT2, conforme indicado no diagrama.</p><p>Cada elemento de XT2 pode não estar associado a nenhum elemento de ET1, podendo, no</p><p>máximo, estar relacionado a um elemento de ET1, conforme indicado no diagrama.</p><p>Ao avaliar as alternativas em conjunto com o diagrama apresentado, temos:</p><p>a) S={ } - RESPOSTA ERRADA - Não cumpre a regra de cardinalidade mínima para cada elemento</p><p>de ET1.</p><p>b) S={ (e1,t1), (e2,t2), (e2,t3) } - RESPOSTA ERRADA - Não contém o elemento e4 de ET1</p><p>relacionado com pelo menos um elemento de XT2.</p><p>c) S={ (e1,t1), (e2,t2), (e4,t1) } - RESPOSTA ERRADA - Contém o elemento t1 relacionado aos</p><p>elementos e1 e e4 de ET1, o que não é permitido pelas regras.</p><p>d) S={ (e1,t1), (e1,t2), (e4,t3), (e4,t2) } - RESPOSTA ERRADA - Não relaciona o elemento e2 de ET1</p><p>com qualquer elemento de XT2, e o elemento t2 de XT2 está relacionado a mais de um</p><p>elemento de ET1.</p><p>e) S={ (e1,t3), (e2,t2), (e4,t1) } - RESPOSTA CORRETA - A única alternativa que apresenta uma</p><p>resposta adequada, pois contém elementos de ET1 relacionados com pelo</p><p>menos um elemento</p><p>de XT2, e cada elemento de XT2 está relacionado a no máximo um elemento de ET1.</p><p>Gabarito: E</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>112</p><p>321</p><p>8. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de</p><p>Sistemas/Infraestrutura/2023</p><p>Suponha que o esquema de um banco de dados relacional tenha sido obtido a partir de um</p><p>modelo E-R em que duas entidades, A e B, estão relacionadas por meio de uma relação R. A</p><p>regra aplicada para a transformação de R foi a fusão das tabelas correspondentes às entidades A</p><p>e B, que deu origem à tabela TR. A chave primária da tabela TR é a mesma que foi originalmente</p><p>definida para a tabela relativa à entidade A.</p><p>Qual diagrama define uma relação R compatível com a transformação descrita acima?</p><p>a)</p><p>b)</p><p>c)</p><p>d)</p><p>e)</p><p>Comentário:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>113</p><p>321</p><p>Fusão de tabelas acontece quando a cardinalidade máxima é 1 dos dois lados do relacionamento</p><p>e, pelo menos uma das entidades tem participação total ou obrigatória. Logo, temos a nossa</p><p>resposta na alternativa E.</p><p>Gabarito: E</p><p>9. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de Sistemas/Processos de</p><p>Negócios/2023</p><p>Os conjuntos a seguir representam o estado de um banco de dados relacional.</p><p>A = { a1, a2, a3 }</p><p>B = { b1, b2 }</p><p>C = { c1, c2, c3 }</p><p>R = { (a1, b1), (a1, b2), (a2, b1), (a2, b2), (a3, b1) }</p><p>S = { (b1, c2), (b2, c3) }</p><p>Admita que os elementos dos conjuntos acima sejam instâncias das entidades ou das relações de</p><p>mesmo nome presentes no diagrama E-R a partir do qual o esquema do banco de dados acima</p><p>foi obtido, e que as regras definidas nesse diagrama E-R são preservadas pelo banco de dados</p><p>em questão.</p><p>Nesse contexto, qual diagrama E-R tem suas regras preservadas pelo banco de dados acima?</p><p>a)</p><p>b)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>114</p><p>321</p><p>c)</p><p>d)</p><p>e)</p><p>Comentário:</p><p>Para resolver essa questão precisamos perceber que existem 2 relacionamentos: R entre A e B e S</p><p>entre B e C. No primeiro, podemos observar, a partir das instâncias do relacionamento que existe</p><p>mais de um elemento de A associado ao mesmo elemento de B e vice-versa. Logo, esse</p><p>relacionamento tem cardinalidade máxima N de ambos os lados. Essa observação nos limita às</p><p>alternativas D e E. Agora, analisando o relacionamento S, temo que existe um elemento de C</p><p>que não se relaciona com nenhum elemento de B, logo, esse relacionamento tem cardinalidade</p><p>mínima zero. Assim, chegamos ao único diagrama factível na alternativa D.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>115</p><p>321</p><p>Observação: Não existem elementos suficientes para definirmos a cardinalidade máxima de S,</p><p>mas estamos supondo que seja 1. Da mesma forma, não existem elementos para definirmos a</p><p>cardinalidade mínima de R.</p><p>Gabarito: D</p><p>10. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de Sistemas/Processos de</p><p>Negócios/2023</p><p>A Figura a seguir exibe um diagrama E-R, que representa o modelo conceitual de um banco de</p><p>dados.</p><p>Esse modelo conceitual deu origem a um esquema relacional cujas tabelas, que representam o</p><p>mapeamento das entidades R, S e T, são mostradas a seguir. A notação usada para descrevê-las</p><p>representa suas respectivas chaves primárias, por meio de nomes de colunas sublinhados.</p><p>R (RX)</p><p>S (SX)</p><p>T (TX)</p><p>Qual tabela representa, adequadamente, a relação W, de modo a preservar as restrições</p><p>existentes no diagrama E-R?</p><p>a)  W (RX, SX, TX, W1)</p><p>b)  W (RX, SX, TX, W1)</p><p>c)  W (RX, SX, TX, W1)</p><p>d)  W (RX, SX, TX, W1)</p><p>e)  W (RX, SX, TX, W1)</p><p>Comentário:</p><p>Para resolver essa questão primeiramente podemos perceber que W1 não é chave da relação</p><p>pois no desenho o círculo que o representa não está pintado. Agora, precisamos ter em mente</p><p>que cada par que contém uma instância de R e uma de S está associado a um e apenas um</p><p>elemento de T. Neste caso, RX e SX fazem parte da chave primária composta do relacionamento,</p><p>o que nos leva a resposta na alternativa C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>116</p><p>321</p><p>Gabarito: C</p><p>11. CESGRANRIO - PTNS (TRANSPETRO)/TRANSPETRO/Análise de Sistemas/Processos de</p><p>Negócios/2023</p><p>Em um Sistema de Gerenciamento de Banco de Dados (SGBD) relacional, um banco de</p><p>metadados é um repositório especializado que armazena informações sobre os dados que estão</p><p>armazenados no banco de dados propriamente dito. Em geral, os metadados ajudam os</p><p>desenvolvedores, os administradores de banco de dados e outras partes interessadas a</p><p>entender, a gerenciar e a trabalhar eficientemente com o banco de dados. Dentre as</p><p>informações típicas que são encontradas nos metadados de um banco de dados relacional,</p><p>está(ão)</p><p>a)  a quantidade total de vendas realizadas, registrada pelas transações.</p><p>b)  as senhas de usuários e suas permissões de sistema operacional.</p><p>c)  o código-fonte dos aplicativos que acessam o banco de dados.</p><p>d)  os backups dos dados armazenados nas tabelas.</p><p>e)  os esquemas de tabelas, incluindo os tipos de dados e as restrições de colunas.</p><p>Comentário:</p><p>As informações típicas que são encontradas nos metadados de um banco de dados relacional</p><p>incluem: e) Os esquemas de tabelas, incluindo os tipos de dados e as restrições de colunas. Os</p><p>metadados fornecem informações sobre a estrutura do banco de dados, como as tabelas</p><p>existentes, os tipos de dados usados em cada coluna, as chaves primárias, as relações entre</p><p>tabelas e outras informações relacionadas ao esquema do banco de dados. Isso ajuda na</p><p>compreensão da estrutura dos dados e é essencial para o desenvolvimento, manutenção e</p><p>otimização do banco de dados. As outras opções não são informações típicas encontradas nos</p><p>metadados, mas sim abordam aspectos diferentes do sistema.</p><p>Gabarito: E</p><p>12. CESGRANRIO - Tec Cien (BASA)/BASA/Tecnologia da Informação/2022</p><p>Um banco de dados relacional é composto pelas seguintes tabelas:</p><p>CREATE TABLE A (</p><p>a1 TEXT NOT NULL,</p><p>a2 TEXT NOT NULL,</p><p>a3 TEXT NOT NULL,</p><p>PRIMARY KEY (a1,a2));</p><p>CREATE TABLE B (</p><p>b1 TEXT NOT NULL,</p><p>b2 TEXT NOT NULL,</p><p>b3 TEXT NOT NULL,</p><p>PRIMARY KEY (b1));</p><p>CREATE TABLE R (</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>117</p><p>321</p><p>a1 TEXT NOT NULL,</p><p>a2 TEXT NOT NULL,</p><p>b1 TEXT NOT NULL,</p><p>PRIMARY KEY (a1,a2),</p><p>FOREIGN KEY (a1,a2)</p><p>REFERENCES A (a1,a2),</p><p>FOREIGN KEY (b1)</p><p>REFERENCES B (b1));</p><p>Com o intuito de simplificar, considere que todas as colunas de todas as tabelas são do tipo</p><p>TEXT.</p><p>O modelo relacional acima foi obtido por meio da aplicação de regras de transformação sobre</p><p>um modelo E-R, de modo a preservar a semântica deste.</p><p>Qual modelo E-R deu origem a essas tabelas?</p><p>a)</p><p>b)</p><p>c)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>118</p><p>321</p><p>d)</p><p>e)</p><p>Comentário:</p><p>Vamos analisar cada uma das alternativas:</p><p>A) Resposta incorreta - Em geral, quando há um relacionamento N:N, como ilustrado nesta</p><p>opção, é criada uma tabela específica chamada entidade associativa. Até este ponto, o modelo</p><p>lógico desenvolvido está em concordância com o modelo relacional. No entanto, ao criar uma</p><p>tabela associativa, a chave primária deve ser composta pelas chaves primárias das tabelas</p><p>relacionadas. Neste caso, a relação R deveria ter como chave primária as chaves a1 e a2 da</p><p>entidade A e a chave b1 da entidade B, e não apenas as chaves</p><p>coisas – todos os diversos esquemas</p><p>(externo, conceitual, interno) e todos os mapeamentos correspondentes (externo/conceitual,</p><p>conceitual/interno) são mantidos.</p><p>Em outras palavras, o catálogo contém informações detalhadas. Às vezes, elas são chamadas</p><p>informações do descritor ou metadados, com objetos RelVars, índices, usuários, restrições de</p><p>integridade, restrições de segurança, e assim por diante.</p><p>As informações do descritor são essenciais para que o sistema faça seu trabalho de modo</p><p>apropriado. Por exemplo, o otimizador utiliza informações do catálogo a respeito de índices e</p><p>outras estruturas físicas de armazenamento, bem como muitas outras informações, para</p><p>ajudá-lo a decidir como implementar as requisições do usuário. Da mesma forma, o subsistema</p><p>de autorização utiliza informações do catálogo sobre usuários e restrições de segurança para</p><p>conceder ou negar tais requisições.</p><p>Figura 3 - Metadados, catálogo de dados ou dicionários de dados</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>10</p><p>321</p><p>TABELAS</p><p>Cada linha de uma tabela é conhecida como uma tupla, ou uma coleção de valores</p><p>relacionados. Cada coluna é vista como um atributo, que possui um determinado conjunto de</p><p>valores possíveis: o domínio. Um domínio é um conjunto de valores atômicos. A figura a seguir</p><p>resume os conceitos vistos por meio da representação da tabela Alunos.</p><p>Percebam que a tabela representa uma relação dentro do modelo de dados. Cada uma das</p><p>colunas (Nome, Número e Turma) representa um atributo, que deve ser associado a cada uma</p><p>das tuplas desta tabela. Cada linha descreve um aluno desta tabela. A primeira linha apresenta</p><p>os dados de Francisco com seus respectivos número e turma.</p><p>Outra constatação que podemos fazer, a partir da figura anterior, é a presença de um conjunto</p><p>de valores possíveis para cada uma das colunas. Não está explícito. Não sabemos a definição</p><p>formal da tabela. Contudo, podemos observar que as tuplas desta relação apresentam apenas</p><p>valores numéricos associados a coluna Número e caracteres associados a coluna Nome. É</p><p>importante perceber que cada coluna possui um tipo de dados.</p><p>Quando especificamos um domínio, geralmente definimos um tipo de dado do qual são</p><p>retirados os valores possíveis para o atributo. Além do tipo de dado, um domínio pode ser</p><p>descrito por meio de um nome, um formato e outras informações adicionais a respeito dos</p><p>dados. Apenas para exemplificar, um atributo salário pode ser definido como um decimal</p><p>positivo com 10 dígitos e seu valor ser definido em reais (R$).</p><p>Outra característica relevante associada ao domínio é o fato dele ser atômico. Isso faz parte da</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>11</p><p>321</p><p>definição do modelo relacional. Não se esqueça disso! Outro ponto importante está</p><p>relacionado à integridade dos dados. O modelo apresenta um conjunto de restrições básicas</p><p>para dados e relacionamentos, conhecidas como restrições de integridade.</p><p>Ok! Temos as nossas relações! Conseguimos definir, pelo menos de forma gráfica, um conjunto</p><p>de tabelas com seus atributos. Se quisermos, podemos povoar ou inserir tuplas nessas tabelas</p><p>com seus respectivos dados. Agora, se eu quiser associar ou analisar os dados de mais de uma</p><p>tabela conjuntamente, ou ainda, fazer uma consulta que me retorne apenas as tuplas ou linhas</p><p>com uma certa restrição, o que devo fazer?</p><p>Os operadores relacionais são usados para manipular as informações pertencentes a cada uma</p><p>das relações do nosso modelo. Esse conjunto de operações é conhecido como álgebra</p><p>relacional. Ela vai nos ajudar a trabalhar com os dados em nossos esquemas relacionais.</p><p>Você deve estar lembrado que o esquema é considerado o projeto do banco de dados, a</p><p>forma de bolo sobre a qual nossas instâncias são armazenadas. Assim, imagine uma tabela</p><p>aluno com 100 alunos. O esquema vai definir os atributos necessários para cada linha da</p><p>relação. Já as linhas são consideradas instâncias da tabela. Lembrando que as linhas podem ser</p><p>denominadas tuplas da tabela. Que tal falarmos um pouco mais sobre elas? Antes ... vamos</p><p>fazer uma questão ...</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>Um esquema de banco de dados é um conjunto de regras que governa um banco de dados ou</p><p>todo o conjunto de objetos pertencentes a determinado usuário.</p><p>Comentários:</p><p>O esquema é um outro nome para o projeto de banco de dados. Se pensarmos no modelo</p><p>relacional, o esquema vai definir os nomes das colunas, seus tipos de dados e restrições de</p><p>integridade. Por mais estranho que pareça, tanto as restrições quanto os tipos de dados são</p><p>considerados regras que orientam a formação e os conteúdos válidos que irão aparecer em uma</p><p>tupla.</p><p>Gabarito: CERTO.</p><p>Uma tupla deve conter um conjunto de elementos. Cada elemento deve conter o nome do</p><p>atributo, o nome do tipo e um valor. Por exemplo:</p><p>TUPLA {NOME:CARACTER:THIAGO, CARGO:CARACTER:PROFESSOR}</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>12</p><p>321</p><p>Veja que cada um dos elementos do conjunto acima, por exemplo,</p><p>NOME:CARACTER:THIAGO, corresponde a um componente da tupla e é conhecido como</p><p>tripla (conjunto de 3 valores) ordenada. A quantidade de componentes de uma tupla é</p><p>conhecida como grau ou aridez da tupla. Neste caso, o grau da nossa tupla é igual a 2.</p><p>Os dois primeiros valores, NOME:CARACTER, são vistos como um par ordenado e descrevem</p><p>um atributo da tupla. Neste exemplo, THIAGO é o valor do atributo em questão. O conjunto</p><p>completo de atributos é conhecido como cabeçalho, este vai determinar o tipo de uma tupla.</p><p>Segundo o CJ Date, as tuplas satisfazem a uma série de propriedades importantes, todas elas</p><p>consequências imediatas das definições apresentadas até aqui:</p><p>(a) Cada tupla contém exatamente um valor para cada um de seus atributos.</p><p>(b) Não existe ordenação da esquerda para a direita nos componentes de uma tupla. Essa</p><p>propriedade acontece porque uma tupla é definida por meio de um conjunto de componentes,</p><p>e os conjuntos na matemática não possuem qualquer ordenação em seus elementos. Essa é a</p><p>opinião do CJ Date, como falamos acima.</p><p>(c) Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é</p><p>um cabeçalho). Mais que isso, essa afirmação também é válida para um subconjunto vazio em</p><p>particular!</p><p>Esse último ponto merece uma explicação mais detalhada. Existe a tupla vazia (TUPLA {</p><p>}). Às vezes, referimo-nos a uma tupla de grau zero mais explicitamente como uma “0- tupla”, a</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>13</p><p>321</p><p>fim de enfatizar o fato de que ela não possui componentes. Outro nome conhecido é de tupla</p><p>nulária.</p><p>Antes de continuar, vamos resolver mais uma questão:</p><p>Ano: 2019 Banca: TRC Órgão: Estratégia Assunto: Modelo Relacional - Tuplas</p><p>2Elmasri, Ramez. Sistemas de Bancos de Dados (p. 42). Edição do Kindle.</p><p>Analise as afirmações abaixo:</p><p>I.Cada tupla contém exatamente um valor (do tipo apropriado) para cada um de seus atributos.</p><p>II.Existe ordenação da esquerda para a direita nos componentes de uma tupla, basta</p><p>observarmos uma tabela desenhada em um papel para constar tal fato.</p><p>III.Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é um</p><p>cabeçalho).</p><p>Quanto às propriedades das tuplas, é correto o que consta APENAS em</p><p>A) I, II e III</p><p>B) II</p><p>C) III</p><p>D) I e II</p><p>E) I e III</p><p>Comentário:</p><p>Acabamos de aprender sobre as propriedades de uma tupla. Perceba que as afirmações I e III</p><p>são substratos das propriedades (a) e (c) descritas acima. Já a afirmação II mostra exatamente a</p><p>minha preocupação com o seu entendimento</p><p>a1 e a2.</p><p>B) Resposta incorreta - A situação é semelhante à alternativa A. Apesar da alteração na</p><p>cardinalidade mínima, o modelo relacional apresentado na opção B ainda considera a</p><p>cardinalidade máxima como N:N. Conforme discutido inicialmente, neste tipo de cardinalidade</p><p>máxima, cria-se uma entidade associativa R, cuja chave primária deve ser uma combinação das</p><p>chaves primárias de A e B.</p><p>C) Resposta correta - A opção C é a única que apresenta uma abordagem viável. Conforme</p><p>discutido no conceito inicial, quando há um relacionamento 1:N, geralmente é incluído um</p><p>atributo como chave estrangeira na tabela com cardinalidade maior, representando a chave</p><p>primária da tabela com menor cardinalidade. Todos os atributos do relacionamento são</p><p>incorporados a essa tabela. No entanto, quando a cardinalidade é especificamente 0,1 : __,N,</p><p>como na alternativa (0,N : 0,1), é possível criar uma tabela própria. Nesse cenário, a tabela</p><p>associativa terá seus próprios atributos e terá como chave primária a chave primária da tabela de</p><p>maior cardinalidade.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>119</p><p>321</p><p>D) Resposta incorreta - Nessa situação, geralmente é realizada uma fusão entre tabelas, embora</p><p>também seja possível criar uma entidade associativa (tabela própria). No entanto, o principal</p><p>equívoco da alternativa é apresentar apenas a chave a1 como chave primária de A, quando na</p><p>verdade deveria ser uma chave composta por a1 e a2.</p><p>E) Resposta incorreta - Assim como nas alternativas A e B, o modelo relacional nesta opção deve</p><p>considerar a cardinalidade máxima como N:N. Como discutido no início, neste tipo de</p><p>cardinalidade máxima, cria-se uma entidade associativa R, cuja chave primária deve ser uma</p><p>combinação das chaves primárias de A e B.</p><p>Gabarito: C</p><p>13. CESGRANRIO - PNS (ELETRONUCLEAR)/ELETRONUCLEAR/Analista de</p><p>Sistemas/Aplicações e Segurança de TIC/2022</p><p>Um analista de sistema decidiu implementar um sistema usando um SGBD relacional. Nesse</p><p>sistema, era necessário transferir uma quantia de dinheiro de uma conta de um correntista para</p><p>uma outra conta de outro correntista. Entretanto, isso só pode ser feito por meio de duas</p><p>operações consecutivas. Temendo que uma interrupção qualquer no banco de dados perdesse</p><p>ou duplicasse a quantia, colocou as duas operações dentro de uma transação.</p><p>As transações são mecanismos disponíveis nos SGBD que apresentam várias propriedades,</p><p>dentre as quais a garantia de realizar todas ou nenhuma das operações dentro da transação.</p><p>Essa propriedade é conhecida como</p><p>a)  atomicidade</p><p>b)  durabilidade</p><p>c)  independência</p><p>d)  isolamento</p><p>e)  recuperabilidade</p><p>Comentário:</p><p>A propriedade que garante que todas as operações dentro de uma transação sejam realizadas</p><p>com sucesso ou nenhuma delas seja realizada é conhecida como atomicidade. Portanto, a</p><p>resposta correta é: a) atomicidade.</p><p>Gabarito: A</p><p>14. CESGRANRIO - Tec Cien (BASA)/BASA/Tecnologia da Informação/2022</p><p>Considere a tabela não normalizada CLIENTE-v1 (CPF, nome, endereço, cidade, UF, telefone,</p><p>conta-corrente) que possui as seguintes características:</p><p>• a chave primária é o atributo CPF;</p><p>• o atributo conta-corrente é uma chave estrangeira;</p><p>• todos os atributos são determinados funcionalmente pelo CPF;</p><p>• o atributo UF é determinado funcionalmente pelo atributo cidade; e</p><p>• não há atributos multivalorados.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>120</p><p>321</p><p>Qual forma normal foi violada e que tabelas devem ser criadas como consequência dessa</p><p>violação?</p><p>a)  A tabela CLIENTE-v1 não está na primeira forma normal (1FN), e, portanto, devem ser criadas</p><p>as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, UF, conta- corrente) e</p><p>CLIENTE_TELEFONE (CPF, telefone).</p><p>b)  A tabela CLIENTE-v1 não está na primeira forma normal (1FN), e, portanto, devem ser criadas</p><p>as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, UF, telefone) e CLIENTE_CONTA (CPF,</p><p>conta-corrente).</p><p>c)  A tabela CLIENTE-v1 não está na terceira forma normal (3FN), e, portanto, devem ser criadas</p><p>as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, telefone, conta-corrente) e CIDADE</p><p>(cidade, UF).</p><p>d)  A tabela CLIENTE-v1 não está na segunda forma normal (2FN), e, portanto, devem ser criadas</p><p>as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, UF) e CLIENTE_CONTA_TELEFONE (CPF,</p><p>conta-corrente, telefone).</p><p>e)  A tabela CLIENTE-v1 não está na terceira forma normal (3FN), e, portanto, devem ser criadas</p><p>as tabelas CLIENTE-v2 (CPF, nome, telefone, conta-corrente) e CLIENTE_ENDERECO (CPF,</p><p>endereço, cidade, UF).</p><p>Comentário:</p><p>A tabela CLIENTE-v1 viola a Terceira Forma Normal (3FN) devido à dependência transitiva entre</p><p>os atributos cidade e UF. Para corrigir isso, devemos criar tabelas separadas para evitar essa</p><p>dependência. A opção que reflete essa correção é:</p><p>c) A tabela CLIENTE-v1 não está na terceira forma normal (3FN), e, portanto, devem ser criadas</p><p>as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, telefone, conta-corrente) e CIDADE</p><p>(cidade, UF).</p><p>Gabarito: C</p><p>15. CESGRANRIO - PNS (ELETRONUCLEAR)/ELETRONUCLEAR/Analista de</p><p>Sistemas/Aplicações e Segurança de TIC/2022</p><p>A descrição de esquemas de bancos de dados relacionais pode ser feita por meio da seguinte</p><p>notação:</p><p>● Uma tabela possui um nome e um conjunto de colunas, separadas por vírgulas.</p><p>● Em uma linha qualquer, os valores referentes às colunas são atômicos e monovalorados.</p><p>● Colunas que compõem a chave primária aparecem sublinhadas.</p><p>● A notação X→ Y indica que Y depende funcionalmente de X (ou X determina Y).</p><p>Um banco de dados possui uma única tabela, cujo esquema é o seguinte:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>121</p><p>321</p><p>Qual é o número mínimo de tabelas que esse banco de dados deve ter para que seu esquema</p><p>atenda à 1FN e à 2FN, apenas?</p><p>a)  1</p><p>b)  2</p><p>c)  3</p><p>d)  4</p><p>e)  5</p><p>Comentário:</p><p>Para estar na segunda forma normal precisamos retirar as dependências funcionais parciais. Neste</p><p>caso, temos uma dependência desta natureza, qual seja, A ฀ I. Para normalizar a segunda forma</p><p>normal, basta criar uma tabela com os atributos A e I. Logo, precisamos de duas tabelas para</p><p>satisfazer a 2FN, o que leva a resposta a alternativa B.</p><p>Gabarito: B</p><p>16. CESGRANRIO - TBN (CEF)/CEF/Tecnologia da Informação/2021</p><p>Leve em conta o conjunto de tabelas a seguir.</p><p>CLIENTE (agencia, conta, CPF, nome, endereco, telefone, titular), onde titular = {1o,2o,3o,4o,5o}</p><p>CONTA_CORRENTE (agencia, conta, data-de-abertura, saldo)</p><p>MOVIMENTACAO (agencia, conta, data, hora, minuto, valor), onde data, hora e minuto são de</p><p>uma movimentação (crédito ou débito) realizada</p><p>Considerando-se o modelo relacional de dados, composto apenas pelas tabelas CLIENTE,</p><p>CONTA_CORRENTE e MOVIMENTACAO, verifica-se que</p><p>a)  não é necessário ter os atributos “hora” e “minuto” como parte da chave primária da tabela</p><p>MOVIMENTACAO.</p><p>b)  o atributo “CPF” é uma chave estrangeira na tabela CLIENTE.</p><p>c)  o atributo “data-de-abertura” deveria fazer parte da chave primária da tabela</p><p>CONTA_CORRENTE.</p><p>d)  o atributo “titular” deveria fazer parte da chave primária da tabela CLIENTE.</p><p>e)  os atributos “agencia” e “conta” na tabela CLIENTE formam uma chave estrangeira.</p><p>Comentário:</p><p>Considerando o modelo relacional composto pelas tabelas CLIENTE, CONTA_CORRENTE e</p><p>MOVIMENTACAO, analisamos as afirmações:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>122</p><p>321</p><p>Letra a) É incorreto afirmar que não é necessário incluir os atributos "hora" e "minuto" na chave</p><p>primária da tabela MOVIMENTACAO. Na verdade, é essencial ter esses atributos na chave</p><p>primária para garantir a unicidade das tuplas, seguindo o conceito de superchave.</p><p>Letra b) A</p><p>alegação de que o atributo "CPF" é uma chave estrangeira na tabela CLIENTE está</p><p>incorreta. O "CPF" faz parte da superchave primária composta dessa tabela, e sua remoção</p><p>afetaria a característica de superchave.</p><p>Letra c) A proposta de incluir o atributo "data-de-abertura" na chave primária da tabela</p><p>CONTA_CORRENTE está incorreta. Pode haver Contas Correntes com a mesma data de</p><p>abertura, o que viola as propriedades da chave primária.</p><p>Letra d) A sugestão de incluir o atributo "titular" na chave primária da tabela CLIENTE está</p><p>equivocada, pois pode haver titulares com a mesma classificação (1o,2o,3o,4o,5o),</p><p>comprometendo as propriedades da chave primária.</p><p>Letra e) A afirmação de que os atributos "agencia" e "conta" na tabela CLIENTE formam uma</p><p>chave estrangeira está correta. Esses atributos referenciam as chaves primárias "agencia" e</p><p>"conta" na tabela CONTA_CORRENTE, estabelecendo um relacionamento entre as tabelas.</p><p>Concluindo, a alternativa correta é a Letra e).</p><p>Gabarito: E</p><p>17. CESGRANRIO - Tec Cien (BASA)/BASA/Tecnologia da Informação/2021</p><p>Seja a seguinte notação para descrever esquemas de bancos de dados relacionais:</p><p>• uma tabela possui um nome e um conjunto de colunas, separadas por vírgulas;</p><p>• em uma linha qualquer, os valores referentes às colunas são atômicos e monovalorados;</p><p>• colunas que admitem o valor nulo aparecem entre colchetes;</p><p>• colunas que compõem a chave primária aparecem sublinhadas;</p><p>• a notação X→ Y indica que Y depende funcionalmente de X (ou X determina Y).</p><p>De acordo com a notação apresentada, qual esquema relacional de banco de dados se encontra</p><p>na 3FN?</p><p>a)</p><p>b)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>123</p><p>321</p><p>c)</p><p>d)</p><p>e)</p><p>Comentário:</p><p>Analisemos as opções apresentadas:</p><p>a) Resposta INCORRETA - A alternativa está errada, pois na tabela R, R4 é dependente de R3, e</p><p>R3 não é uma chave primária, não cumprindo com a 3FN.</p><p>b) Resposta INCORRETA - A alternativa está errada, pois na tabela S, S4 é dependente apenas de</p><p>S2, ou seja, depende apenas de parte da chave primária, não cumprindo com a 2FN.</p><p>c) Resposta INCORRETA - A alternativa está errada, pois na tabela R, R4 e R3 são dependentes</p><p>de R2, e R2 não é uma chave primária, não cumprindo com a 3FN.</p><p>d) Resposta CORRETA - A alternativa está correta, pois cumpre com todas as formas normais.</p><p>Não existem tabelas aninhadas, os atributos são totalmente dependentes das chaves primárias</p><p>em ambas as tabelas, e não existem atributos dependentes de outros atributos que não sejam</p><p>chaves.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>124</p><p>321</p><p>e) Resposta INCORRETA - A alternativa está errada, pois na tabela S, S4 é dependente de S3, e</p><p>S3 não é uma chave primária, não cumprindo com a 3FN.</p><p>Gabarito: D</p><p>18. CESGRANRIO - Esc BB/BB/Agente de Tecnologia/2021</p><p>Na descrição de esquemas de banco de dados relacionais, a notação A → B indica que B</p><p>depende funcionalmente de A (ou que A determina B).</p><p>Admitindo-se que todas as relações apresentadas a seguir atendem à 1FN, o único esquema que</p><p>se encontra na 3FN é</p><p>a)</p><p>b)</p><p>c)</p><p>d)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>125</p><p>321</p><p>e)</p><p>Comentário:</p><p>Vamos examinar cada uma das opções:</p><p>a) A relação B está na 3FN, mas é observada uma dependência transitiva entre a1 e a4 (a1→ a3</p><p>e a3→ a4). Logo, não está na 3FN. A afirmativa é INCORRETA.</p><p>b) Observem que A possui apenas uma chave primária (a1), que determina todos os outros</p><p>atributos, e B possui apenas uma chave primária (b2), que também determina todos os outros.</p><p>Portanto, não há chave composta (está na 2FN), e não há dependência transitiva (está na 3FN). O</p><p>gabarito correto é a LETRA B.</p><p>c) A relação A está na 3FN. No entanto, a afirmação na LETRA C está incorreta, pois a relação B</p><p>não está na 2FN devido a b4 depender apenas de parte da chave primária (b2). Para que a</p><p>relação B esteja na 3FN, o conjunto completo (b1, b2) deveria determinar b4, assim como ocorre</p><p>com b3. Portanto, a afirmativa é INCORRETA.</p><p>d) A relação A está na 3FN, mas há uma dependência transitiva entre (b1,b2) e b4: (b1,b2)→ b3</p><p>e b3→ b4. Assim, não está na 3FN. A afirmativa é INCORRETA.</p><p>e) A LETRA E possui os mesmos problemas da LETRA D. Portanto, não está na 3FN. A afirmativa</p><p>é INCORRETA.</p><p>Gabarito: B</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>126</p><p>321</p><p>19. CESGRANRIO - Técnico (UNIRIO)/Tecnologia da Informação/2019</p><p>A Figura abaixo exibe uma tabela pertencente a um banco de dados Relacional. Essa tabela é</p><p>composta por 5 colunas (A, B, C, D e E), todas contendo cadeias de caracteres. Os campos em</p><p>branco contêm o valor nulo (NULL).</p><p>Tomando por base apenas os valores presentes na tabela acima, qual conjunto de colunas é uma</p><p>chave primária válida para essa tabela?</p><p>A) (A)</p><p>B) (A, B)</p><p>C) (C, E)</p><p>D) (B, E, C)</p><p>E) (E, D, C)</p><p>Comentário:</p><p>Vamos lembrar algumas características que as colunas que fazer parte da chave devem possuir:</p><p>Isoladamente, cada coluna que faz parte da chave não pode ter atributos nulos. Esse ponto</p><p>elimina as colunas A e D das opções de composições para a chave primária. E</p><p>consequentemente exclui as alternativas A, B e E.</p><p>A composição dos atributos não pode ter valores repetidos em duas linhas da tabela. Essa é a</p><p>propriedade de unicidade da chave.</p><p>De posse da segunda propriedade podemos analisar as demais alternativas. Na letra C,</p><p>observamos que os valos 2X, 88P se repetem na segunda e na penúltima linha para os atributos</p><p>C e E, o que inviabiliza o uso de apenas esses dois atributos como chave primária.</p><p>Isso nos leva a analisar a alternativa D, observe que, em conjunto, os valores dos atributos B, E e</p><p>C não se repetem em nenhuma das linhas da tabela. Logo, temos nossa resposta na alternativa</p><p>D.</p><p>Gabarito: D</p><p>20. CESGRANRIO - Engenheiro (PETROBRAS)/Equipamentos Júnior/Eletrônica/2018</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>127</p><p>321</p><p>As Tabelas W e Z, exibidas na Figura a seguir, fazem parte de um banco de dados relacional.</p><p>Quais colunas dessas Tabelas podem ser definidas, respectivamente, como chave primária e</p><p>chave estrangeira?</p><p>A) A e J</p><p>B) G e C</p><p>C) B e H</p><p>D) D e B</p><p>E) H e B</p><p>Comentário:</p><p>Para resolver essa questão temos que ter em mente duas coisas.</p><p>É necessário validar a unicidade da chave primária.</p><p>É necessário validas a integridade referencial. Ou seja, os valores da chave estrangeira devem</p><p>estar presentes na coluna referenciada (chave primária).</p><p>Agora podemos analisar as alternativas:</p><p>(ERRADA) A coluna A não pode ser chave primária pois um dos seus atributos é nulo, ou vazio.</p><p>Isso fere a propriedade da chave.</p><p>(ERRADA) A coluna G pode ser uma chave primária, mas a coluna C não pode ser uma chave</p><p>estrangeira que aponta para G pois o valor 44 não existe em G.</p><p>(ERRADA) A coluna B não pode ser uma chave primária (tem dois valores ZK33). Já a coluna H</p><p>possui o valor TYU2 que não existe na coluna B, logo, não pode ser considerada uma chave</p><p>estrangeira.</p><p>(CERTA) A coluna D pode ser considerada chave primária pois tem a propriedade de unicidade.</p><p>Já a coluna B pode ser considerada uma chave estrangeira, pois todos os seus valores estão</p><p>presentes na coluna D.</p><p>(ERRADA) A coluna H não pode ser considerada chave primária pois o valor VJ01 aparece duas</p><p>vezes, o que fere a propriedade de unicidade.</p><p>Gabarito: D</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>128</p><p>321</p><p>21. CESGRANRIO - Profissional (LIQUIGÁS)/Analista de Sistemas/Júnior</p><p>TI/2018/Edital 02</p><p>As chaves estrangeiras (FKs) são utilizadas no modelo</p><p>A) entidade-relacionamento para representar atributos de relacionamentos.</p><p>B) entidade-relacionamento para representar atributos determinantes.</p><p>C) entidade-relacionamento para representar relacionamentos.</p><p>D) relacional para representar atributos que admitem valores nulos.</p><p>E) relacional para representar ligações entre linhas de tabelas.</p><p>Comentário:</p><p>As chaves estrangeiras (FKs) são utilizadas no modelo relacional para permitir a ligação entre</p><p>duas tabelas, mais especificamente entre linhas das tabelas. Assim, analisando as alternativas</p><p>temos que:</p><p>a. ERRADO. O modelo entidade-relacionamento é um modelo de alto nível que descreve um</p><p>conjunto de entidades e seus relacionamentos dentro de um domínio. As entidades possuem</p><p>propriedades, os atributos. Chave estrangeira não é representada no modelo</p><p>entidade-relacionamento.</p><p>b. ERRADO. Chave estrangeira não é representada no modelo entidade-relacionamento.</p><p>c. ERRADO. Chave estrangeira não é representada no modelo entidade-relacionamento.</p><p>d. ERRADO. O modelo relacional representa os dados como relações/tabelas que são</p><p>formadas por atributos/colunas. Uma linha na tabela é um registro único identificado por uma</p><p>chave primária. A ligação entre as tabelas é feita por meio das chaves estrangeiras. Valores nulos</p><p>podem estar presentes em qualquer campo que não tenha a restrição NOT NULL, e não apenas</p><p>em chaves estrangeiras.</p><p>e. CORRETO. A chave estrangeira representa o relacionamento entre tabelas em um banco</p><p>de dados. Uma chave estrangeira faz referência a uma chave primária de uma outra tabela ou da</p><p>mesma tabela, no caso de autorrelacionamento. O valor de uma chave estrangeira deve ser</p><p>obtido de uma chave primária para garantir a integridade dos dados.</p><p>Assim temos o gabarito na alternativa E.</p><p>Gabarito: E.</p><p>22. CESGRANRIO - Profissional (LIQUIGÁS)/Arquiteto de Soluções/Júnior TI/2018/Edital 02</p><p>Sejam as tabelas R(A1,A2) e S(A3,A4) pertencentes a um dado esquema relacional, em que</p><p>todos os atributos (A1, A2, A3 e A4) assumem valores inteiros. Sabe-se também que A4 é chave</p><p>estrangeira da tabela S, referenciando a tabela R.</p><p>A integridade referencial desse banco de dados relacional estará garantida quando, para</p><p>qualquer tupla de S, o valor para A4:</p><p>A) for nulo, ou igual a um valor de A1 em uma tupla de R, sendo A1 a chave primária de R.</p><p>B) for nulo ou igual a um valor de A1 ou A2 em alguma tupla de R, sendo A1 e A2,</p><p>respectivamente, a chave primária e a chave estrangeira de R.</p><p>C) nunca for nulo e for igual a um valor de A1 em uma tupla de R, sendo A1 a chave primária de</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>129</p><p>321</p><p>R.</p><p>D) nunca for nulo e for igual a um valor de A1 ou A2 em alguma tupla de R, sendo A1 ou A2 a</p><p>chave primária de R.</p><p>E) nunca for nulo e for igual a um valor de A1 ou A2, em alguma tupla de R, sendo A1 e A2,</p><p>respectivamente, a chave primária e a chave estrangeira de R.</p><p>Comentário:</p><p>A chave estrangeira é uma coluna de uma tabela que pode assumir:</p><p>1. Valor nulo, caso o relacionamento não seja obrigatório.</p><p>2. Um dos valores da coluna referenciada, que geralmente é a chave primária da tabela</p><p>referenciada.</p><p>A partir desta lógica, podemos avaliar as alternativas:</p><p>a) CORRETO. A restrição de integridade referencial é definida entre duas tabelas para</p><p>assegurar a consistência entre as tuplas nas relações (tabelas). Isso significa que, em uma tabela,</p><p>o atributo que referencia outra tabela, deve-se referir a um atributo existente nessa tabela. A</p><p>chave estrangeira deve referenciar uma chave primária existente na outra relação, podendo a</p><p>chave estrangeira ter valor nulo.</p><p>b) ERRADO. A chave estrangeira de uma relação só tem correspondência com a chave</p><p>primária da relação de origem. O erro da questão está em afirmar que A4 pode ter referência</p><p>com A2, pois A2 não é chave primária de R.</p><p>c) ERRADO. Chaves estrangeiras aceitam o valor nulo.</p><p>d) ERRADO. Chaves estrangeiras aceitam o valor nulo. E, sendo a chave estrangeira formada</p><p>por apenas um atributo, ela deve referenciar um atributo que é chave primária da outra relação.</p><p>e) ERRADO. Chaves estrangeiras aceitam o valor nulo e referenciam um valor contido na</p><p>chave primária da tabela de origem.</p><p>Gabarito: A.</p><p>23. CESGRANRIO - Analista de Sistemas Júnior (TRANSPETRO)/Infraestrutura/2018</p><p>As Tabelas a seguir fazem parte do esquema de um banco de dados de uma escola de nível</p><p>médio, que deseja controlar os resultados de seus alunos nos exames simulados do ENEM.</p><p>CREATE TABLE ALUNO (</p><p>MATRICULA NUMBER(5) NOT NULL, NOME VARCHAR2(50) NOT NULL, ANO NUMBER(1) NOT</p><p>NULL, TURMA CHAR(1) NOT NULL,</p><p>CONSTRAINT ALUNO_PK PRIMARY KEY (MATRICULA.)</p><p>)</p><p>CREATE TABLE SIMULADO (</p><p>CODIGO NUMBER(5) NOT NULL, DESCRICAO VARCHAR2(80) NOT NULL, DATA DATE NOT</p><p>NULL,</p><p>CONSTRAINT SIMULADO_PK PRIMARY KEY (CODIGO)</p><p>)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>130</p><p>321</p><p>CREATE TABLE PARTICIPACAO ( MATRICULA NUMBER(5) NOT NULL, CODIGO NUMBER(5)</p><p>NOT NULL, PONTOS NUMBER(4),</p><p>CONSTRAINT PART_PK PRIMARY KEY (MATRICULA,CODIGO), CONSTRAINT PART_FK1</p><p>FOREIGN KEY (MATRICULA.)</p><p>REFERENCES ALUNO (MATRICULA.), CONSTRAINT PART_FK2 FOREIGN KEY (CODIGO)</p><p>REFERENCES SIMULADO (CODIGO)</p><p>)</p><p>Considere que:</p><p>• A Tabela PARTICIPACAO registra a inscrição de alunos nos exames simulados promovidos</p><p>pela escola. Um aluno pode inscrever-se em muitos simulados, e um simulado pode ter muitos</p><p>alunos inscritos.</p><p>• Todas as vezes em que um aluno se inscrever em um simulado uma linha será inserida na</p><p>tabela PARTICIPACAO.</p><p>• Após a correção de um simulado, os pontos obtidos pelos alunos inscritos são atualizados</p><p>na tabela PARTICIPACAO.</p><p>Seja o seguinte comando SQL:</p><p>SELECT P.MATRICULA</p><p>FROM PARTICIPACAO P, SIMULADO S</p><p>WHERE S.DATA='02/06/2017' AND S.CODIGO=P.CODIGO</p><p>Que sequência de operações da Álgebra Relacional produz o mesmo resultado que o comando</p><p>SQL acima? = Produto cartesiano⊗</p><p>(A) σDATA = '02/06/2017' ((πMATRICULA (SIMULADO ⊗</p><p>SIMULADO.CODIGO=PARTICIPACAO.CODIGO PARTICIPACAO))</p><p>(B) σMATRICULA (( DATA = '02/06/2017' (SIMULADO))π CODIGO=PARTICIPACAO.CODIGO⊗</p><p>PARTICIPACAO)</p><p>(C) πMATRICULA ((σDATA = '02/06/2017' (SIMULADO)) σ CODIGO=PARTICIPACAO.CODIGO</p><p>PARTICIPACAO)</p><p>(D) σMATRICULA (((πDATA = '02/06/2017' (SIMULADO)) ⊗</p><p>CODIGO=PARTICIPACAO.CODIGO PARTICIPACAO)</p><p>(E) πMATRICULA ((σDATA = '02/06/2017' (SIMULADO)) CODIGO=PARTICIPACAO.CODIGO⊗</p><p>PARTICIPACAO</p><p>Comentário:</p><p>O comando pede para fazer uma projeção na coluna matrícula sobre o resultado de um produto</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>131</p><p>321</p><p>cartesiano entre as tabelas SIMULADO e PARTICIPACAO onde a data é igual a 02/06/2017 e a</p><p>condição de junção é feita sobre o atributo código. Perceba que a alterativa E faz exatamente</p><p>isso.</p><p>Gabarito: E</p><p>24. CESGRANRIO - Engenheiro (PETROBRAS)/Equipamentos Júnior/Eletrônica/2018</p><p>A Figura 1 a seguir exibe duas relações que fazem parte de um banco de dados relacional.</p><p>Sobre essas relações foi aplicada uma sequência de operações da Álgebra Relacional, que</p><p>resultou na relação exibida na Figura 2.</p><p>Qual sequência de operações é compatível com a relação resultante?</p><p>A) (σB>25 (πC(S))) A=GT</p><p>B) πC ((σB>25 (S))) A=G T)</p><p>C) πC (S C=G T)</p><p>D) πC ((σG</p><p>junção</p><p>como apresentado na alternativa C.</p><p>A letra A está errada pois a seleção com B > 25 é feita sobre o resultado da projeção sobre a</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>132</p><p>321</p><p>tabela S que retorna apenas o atributo C, o que inviabiliza a comparação com os valores de B. A</p><p>alternativa B é a nossa resposta. Ela seleciona as linhas de S com valor de B maios que 25,</p><p>depois faz o produto cartesiano com T, usando A e G como atributos de junção. Nesse resultado</p><p>intermediário temos duas linhas com os valores:</p><p>A B C G H</p><p>35 30 Fusca 35 1980</p><p>45 30 Opala 40 1985</p><p>De posse desse resultado, vamos fazer uma projeção sobre a coluna C. O que nos leva ao</p><p>resultado apresentado.</p><p>As demais alternativas não retornam o valor desejado. Logo, temos a nossa resposta na</p><p>alternativa B.</p><p>Gabarito: B.</p><p>25. CESGRANRIO - Analista (PETROBRAS)/Sistema Júnior/2018</p><p>Um estagiário da área de administração de banco de dados recebeu a tarefa de normalizar as</p><p>tabelas de um esquema de BD que será usado em um sistema que, em breve, irá entrar em</p><p>produção. Há alguns dias ele foi chamado por um analista de banco de dados para que</p><p>enumerasse o que foi feito no esquema, tendo em vista garantir que todas as tabelas atendam à</p><p>3ª forma normal (3FN). Ao ser questionado pelo analista, ele respondeu o seguinte:</p><p>• Todas as colunas definidas são atômicas.</p><p>• Foram definidas chaves primárias para todas as tabelas.</p><p>• Todas as colunas que fazem parte de alguma chave primária foram definidas como NOT</p><p>NULL.</p><p>• Não há chave primária composta em tabela alguma.</p><p>• Todas as dependências funcionais transitivas foram eliminadas.</p><p>Nessas condições, para garantir que todas as tabelas desse esquema atendam à 3FN,</p><p>A) é necessário estender a restrição de NOT NULL para as demais colunas.</p><p>B) é necessário criar chaves estrangeiras para implementar as relações.</p><p>C) é necessário eliminar as dependências funcionais parciais existentes.</p><p>D) é necessário eliminar todas as colunas multivaloradas existentes.</p><p>E) nada mais precisa ser feito.</p><p>Comentário:</p><p>Essa questão é interessante pois demonstra a competência do Estagiário. Ele fez seu dever de</p><p>casa correto e nada mais precisa ser feito para a normalização à 3FN. Quer saber por quê?</p><p>Todas as colunas são atômicas, logo não temos problemas com a primeira forma normal. Não</p><p>existem atributos compostos ou multivalorados.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>133</p><p>321</p><p>As tabelas possuem chave primária e esta é simples, ou seja, não temos problemas com a</p><p>segunda forma normal. Não pode existir dependência parcial com chaves primárias de apenas 1</p><p>atributo.</p><p>Todas as dependências transitivas foram eliminadas e com ela os problemas resolvidos pela</p><p>terceira forma normal.</p><p>Logo, temos um modelo que está de acordo com a terceira forma normal.</p><p>Gabarito: E.</p><p>26. CESGRANRIO - Analista de Sistemas Júnior (TRANSPETRO)/Processos de Negócio/2018</p><p>Considere a seguinte notação para especificar componentes de esquemas relacionais:</p><p>• Tabelas são descritas por um nome e uma lista de colunas, separadas por vírgulas.</p><p>• Colunas que participam da chave primária estão sublinhadas.</p><p>• Dependências funcionais entre colunas são definidas pelo símbolo (→) e exibidas em</p><p>seguida à definição das tabelas.</p><p>Todos os esquemas atendem à 1FN.</p><p>Dos esquemas a seguir, o único que se encontra na 3FN é</p><p>A) T1(x1,x2,x3)</p><p>x2→x1</p><p>x1→x3</p><p>T2(y1,y2,y3)</p><p>y2→y1</p><p>y2→y3</p><p>T3(z1,z2,z3)</p><p>(z2,z3)→z1</p><p>B) T1(x1,x2,x3,x4)</p><p>x2→x1</p><p>x2→x3</p><p>x2→x4</p><p>T2(y1,y2,y3,y4)</p><p>(y1,y3)→y2</p><p>y2→y4</p><p>T3(z1,z2,z3)</p><p>z1→z2</p><p>z1→z3</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>134</p><p>321</p><p>C) T1(x1,x2,x3)</p><p>(x2,x3)→x1</p><p>T2(y1,y2,y3)</p><p>y2→y</p><p>T3(z1,z2,z3)</p><p>(z1,z3)→z2</p><p>D) T1(x1,x2,x3,x4)</p><p>x2→x1</p><p>x2→x3</p><p>x2→x4</p><p>T2(y1,y2,y3)</p><p>T3(z1,z2,z3)</p><p>z2→z1</p><p>E) T1(x1,x2,x3,x4)</p><p>(x1,x4)→x2</p><p>(x1,x4)→x3</p><p>T2(y1,y2,y3)</p><p>T3(z1,z2,z3)</p><p>z2→z1</p><p>z2→z3</p><p>Comentário:</p><p>Para chegarmos a conclusão qual a alternativa correta devemos eliminar todas as alternativas</p><p>erradas.</p><p>A letra A possui uma dependência transitiva X2→ X1→ X3.</p><p>A alternativa B também possui uma dependência transitiva: (y1,y3)→y2→y4.</p><p>A opção C, mais uma vez, tem uma dependência transitiva: (y1,y3)→y2→y4</p><p>Na alternativa D, temos uma dependência parcial z2→ z1. Isso impede que a</p><p>relação esteja na terceira forma normal.</p><p>Por fim, a letra E apresenta a nossa resposta. Todas as tabelas estão na terceira forma normal.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>135</p><p>321</p><p>Gabarito: E</p><p>27. CESGRANRIO - Escriturário (BB)/"Sem Área"/2018</p><p>No âmbito de bancos de dados relacionais, uma tabela que esteja na</p><p>A) segunda forma normal pode conter dependências funcionais parciais.</p><p>B) segunda forma normal não pode conter dependências funcionais transitivas.</p><p>C) terceira forma normal não pode conter dependências funcionais parciais.</p><p>D) terceira forma normal pode conter dependências funcionais transitivas.</p><p>E) segunda forma normal não pode conter chave primária composta.</p><p>Comentário:</p><p>A questão trata de normalização. Vamos relembrar quais são as formas normais:</p><p>● 1ª Forma Normal (1FN): Para estar na 1FN, todos os atributos devem ser atômicos (ou</p><p>indivisíveis).</p><p>● 2ª Forma Normal (2FN): Para estar na 2FN, a tabela deve estar na 1FN e, além disso, todas</p><p>as colunas que não são chave devem ter dependência funcional com toda a chave primária, e</p><p>não apenas parte dela. Ou seja, não podem existir dependências funcionais parciais.</p><p>● 3ª Forma Normal (3FN): Para estar na 3FN, a tabela deve estar na 2FN e todas as colunas</p><p>que não são chaves primárias não podem apresentar dependência entre si, sendo dependentes</p><p>apenas da chave primária. Ou seja, não podem existir dependências funcionais transitivas.</p><p>Agora, vamos analisar as alternativas:</p><p>a. ERRADA. Para estar na 2FN, a tabela não pode conter dependências funcionais parciais.</p><p>b. ERRADA. Não conter dependências funcionais transitivas é exigência para a tabela estar</p><p>na 3FN.</p><p>c. CORRETA. Para estar na 3FN, a tabela deve estar na 2FN. Para estar na 2FN, não pode</p><p>existir dependências funcionais parciais.</p><p>d. ERRADA. Para estar na 3FN, a tabela não pode conter dependências funcionais transitivas.</p><p>e. ERRADA. Uma tabela na 2FN pode conter chave primária composta.</p><p>Gabarito: C</p><p>28. CESGRANRIO - Profissional (LIQUIGÁS)/Analista de Sistemas/Júnior TI/2018/Edital 02</p><p>Se uma tabela relacional atende à 2ª forma normal, então ela NÃO possui</p><p>A) dependência funcional transitiva</p><p>B) dependência funcional multivalorada</p><p>C) coluna multivalorada</p><p>D) chave primária atômica E chave primária composta</p><p>Comentário:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>136</p><p>321</p><p>Essa questão serve para nos lembrar que as formas normais são encadeadas. Se a relação está</p><p>na segunda forma normal, ela também está na primeira. Desta forma, ela também não possui</p><p>atributos multivalorados e compostos. Isso nos leva a resposta na alternativa C.</p><p>Gabarito: C.</p><p>29. CESGRANRIO - Profissional (LIQUIGÁS)/Arquiteto de Soluções/Júnior TI/2018/Edital 02</p><p>A teoria da normalização para o modelo relacional especifica Formas Normais, critérios que</p><p>permitem qualificar cada tabela de um esquema relacional em função de possíveis anomalias de</p><p>atualização de dados.</p><p>A 1ª Forma Normal estabelece que as tabelas não devem permitir atributos</p><p>A) nulos</p><p>B) indivisíveis</p><p>C) multivalorados</p><p>D) contidos na chave primária</p><p>E) contidos tanto na chave primária quanto na chave estrangeira</p><p>Comentário:</p><p>Uma tabela atende à 1ª Forma Normal quando todos os atributos são atômicos, ou seja, simples</p><p>e indivisíveis. Não podem existir</p><p>atributos multivalorados, compostos, complexos ou aninhados.</p><p>Atributos multivalorados possuem um ou mais valores para o mesmo campo, por exemplo, o</p><p>campo telefone pode ter vários números de telefones.</p><p>Atributos compostos são aqueles que podem ser divididos em atributos simples, por exemplo,</p><p>o atributo endereço que pode ser separado em rua, número e CEP.</p><p>Atributos complexos são formados por atributos compostos e multivalorados juntos. Já os</p><p>atributos aninhados possuem um encadeamento de atributos. As demais alternativas não fazem</p><p>parte das regras das Formas Normais.</p><p>Gabarito: C</p><p>30. CESGRANRIO - Profissional (LIQUIGÁS)/Arquiteto de Soluções/Júnior TI/2018/Edital 02</p><p>A Tabela relacional abaixo contém dados sobre os empregados de uma empresa que integram a</p><p>sua comissão interna de prevenção de acidentes.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>137</p><p>321</p><p>As colunas dessa Tabela têm os seguintes significados:</p><p>MATRÍCULA – matrícula do empregado. Chave primária da Tabela. NOME – nome do</p><p>empregado.</p><p>TELEFONES – números dos vários telefones de contato do empregado. CÓD DEPTO – código</p><p>do departamento em que o empregado trabalha. NOME DEPTO – nome do departamento em</p><p>que o empregado trabalha.</p><p>Em relação às formas normais (FN), essa Tabela</p><p>A) encontra-se na 2FN, pois atende à 1FN e não possui chave primária composta.</p><p>B) encontra-se na 2FN, pois atende à 1FN e não possui dependências funcionais parciais.</p><p>C) encontra-se na 3FN, pois atende às duas primeiras formas normais e não possui dependências</p><p>funcionais transitivas.</p><p>D) encontra-se na 3FN, pois atende à 2FN e não possui chave primária composta.</p><p>E) não atende a nenhuma das formas normais.</p><p>Comentário:</p><p>Claramente a tabela tem problemas com a primeira forma normal por possuir um atributo</p><p>multivalorado. Assim, podemos marcar nossa resposta na alternativa E. .</p><p>Gabarito: E</p><p>31. CESGRANRIO - Analista (UNIRIO)/Tecnologia da Informação/2019</p><p>A notação a seguir é uma forma alternativa de descrever esquemas de bancos de dados</p><p>relacionais, sem que seja necessário fazê-lo por meio de comandos SQL.</p><p>• Uma tabela é descrita por meio de um nome e um conjunto de colunas, separadas por</p><p>vírgulas.</p><p>• Por serem irrelevantes para a questão, os tipos de dados das colunas não são</p><p>especificados.</p><p>• Colchetes são usados para representar colunas que admitem o valor nulo.</p><p>• Colunas sublinhadas representam a chave primária de uma tabela.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>138</p><p>321</p><p>• Chaves estrangeiras são representadas por meio da cláusula REF:</p><p>REF</p><p>Um analista de banco de dados transformou um modelo conceitual de dados no seguinte</p><p>esquema relacional, empregando, para isso, a notação descrita acima:</p><p>E(e1,e2,g1,g2) F(f1,f2)</p><p>R(e1,f1,r1) e1 REF E f1 REF F</p><p>Sabendo-se que o esquema relacional preservou a semântica do modelo conceitual, qual</p><p>diagrama E-R deu origem a esse esquema relacional?</p><p>A)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>139</p><p>321</p><p>B)</p><p>C)</p><p>D)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>140</p><p>321</p><p>E)</p><p>Comentário:</p><p>Bom ... vamos resolver a questão ... vou descrever a lógica que usei para resolver ...</p><p>Primeiramente não temos nenhum colchete, logo todas as colunas são diferentes de nulo. Isso</p><p>nos leva a cardinalidade do relacionamento entre E e G. Como g1 e g2 eram atributos de E, o</p><p>relacionamento entre eles é (1,1) em ambos os lados. Apenas essa primeira consideração já me</p><p>deixou entre as opções A e C.</p><p>O segundo ponto é que e1 é a chave do relacionamento R. Desta forma, cada elemento de E só</p><p>pode estar associado a 1 elemento de F. Entretanto, cada elemento de F pode estar associado a</p><p>vários elementos de E. O que nos leva a resposta na alternativa C.</p><p>Gabarito: C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>141</p><p>321</p><p>32. CESGRANRIO - Técnico Científico (BASA)/Tecnologia da Informação/2018</p><p>Considere que, em um modelo Entidade-Relacionamento, há duas entidades denominadas X e Y</p><p>que se relacionam por meio de um relacionamento denominado R; que uma entidade de X pode</p><p>relacionar-se a nenhuma ou a várias entidades de Y; e que uma entidade em Y sempre se</p><p>relaciona a exatamente uma entidade em X. Ou seja:</p><p>A modelagem relacional desses dados, que garante que as tabelas estarão na Terceira Forma</p><p>Normal (3FN), definirá</p><p>A) duas tabelas (T1 e T2), uma para X (T1) e outra para Y (T2), e uma chave estrangeira em T1 que</p><p>referencia a chave primária de T2.</p><p>B) duas tabelas (T1 e T2), uma para X (T1) e outra para Y (T2), e uma chave estrangeira em T2 que</p><p>referencia a chave primária de T1.</p><p>C) três tabelas (T1, T2 e TR), uma para X (T1), outra para Y (T2) e outra para R (TR), uma chave</p><p>estrangeira em T1 que referencia a chave primária de TR, e uma chave estrangeira em TR que</p><p>referencia a chave primária de T2.</p><p>D) três tabelas (T1, T2 e TR), uma para X (T1), outra para Y (T2) e outra para R (TR), uma chave</p><p>estrangeira em T1 que referencia a chave primária de TR, e uma chave estrangeira em T2 que</p><p>referencia a chave primária de TR.</p><p>E) uma tabela T com todos os atributos das entidades X e Y.</p><p>Comentário:</p><p>Sabemos que a cardinalidade vai definir a transformação do relacionamento do modelo ER para</p><p>o relacional. Neste caso, temos uma cardinalidade 1-N, o que nos leva a coluna de ligação que</p><p>deve ficar no lado N da relação. Assim, como cada elemento de Y está associado a apenas 1</p><p>elemento de X, a chave primária de X deve ser usada como chave estrangeira em Y. Logo, nossa</p><p>resposta está na alternativa B.</p><p>“duas tabelas (T1 e T2), uma para X (T1) e outra para Y (T2), e uma chave estrangeira em T2 que</p><p>referencia a chave primária de T1.”</p><p>Gabarito: B</p><p>33. CESGRANRIO - Profissional (LIQUIGÁS)/Analista de Sistemas/Júnior TI/2018/Edital 02</p><p>(Adaptada)</p><p>A notação a seguir será usada para descrever esquemas de bancos de dados relacionais.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>142</p><p>321</p><p>• Uma tabela é descrita por meio de um nome e um conjunto de colunas, separadas por</p><p>vírgulas.</p><p>• Por serem irrelevantes para a questão, os tipos de dados das colunas não são</p><p>especificados.</p><p>• Colchetes são usados para representar colunas que admitem o valor nulo.</p><p>• Colunas sublinhadas representam a chave primária de uma tabela.</p><p>• Chaves estrangeiras são representadas por meio da cláusula REF:</p><p>REF Seja o seguinte diagrama E-R:</p><p>Qual esquema relacional preserva a semântica do modelo E-R exibido na Figura acima?</p><p>A) A(a1,a2,a3)</p><p>B(b1,b2)</p><p>C(c1,c2)</p><p>R(a1,b1,r1) a1 REF A b1 REF</p><p>B) S(b1,c1) b1 REF B c1 REF C</p><p>B A(a1,a2,a3)</p><p>B(b1,b2)</p><p>C(c1,c2)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>143</p><p>321</p><p>R(a1,b1,r1) a1 REF A b1 REF B S(b1,c1) b1 REF B c1 REF C</p><p>C) A(a1,a2,a3)</p><p>B(b1,b2)</p><p>C(c1,c2)</p><p>R(a1,b1,r1) a1 REF A b1 REF B S(b1,c1) b1 REF B c1 REF C</p><p>D) A(a1,a2,a3)</p><p>B(b1,b2)</p><p>C(c1,c2)</p><p>R(a1,b1,r1) a1 REF A b1 REF B S(b1,c1) b1 REF B c1 REF C</p><p>E) A(a1,a2,a3)</p><p>B(b1,b2)</p><p>C(c1,c2)</p><p>R(a1,b1,r1) a1 REF A</p><p>b1 REF B S(b1,c1) b1 REF B c1 REF C</p><p>Comentário:</p><p>O pulo do gato para resolver essa questão é observar que existem dois relacionamentos com</p><p>cardinalidade N-N. Logo, precisamos criar duas tabelas de ligação cuja chave primária é a</p><p>composição das chaves estrangeiras que participam da tabela que</p><p>representa o relacionamento.</p><p>Logo, temos nossa resposta na alternativa C.</p><p>Gabarito: C</p><p>34. CESGRANRIO - Profissional (LIQUIGÁS)/Arquiteto de Soluções/Júnior TI/2018/Edital 02</p><p>A Figura a seguir exibe, por meio de um diagrama E-R, o modelo conceitual de um banco de</p><p>dados.</p><p>A generalização acima é total (completa) e compartilhada (sobreposta).</p><p>Os elementos do conjunto abaixo pertencem ao banco de dados em questão, além de serem</p><p>instâncias da entidade C.</p><p>C=C={x1,x2,x3,x4,x5,x6,x7,x8,x9 }</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>144</p><p>321</p><p>==1365fc==</p><p>Quais conjuntos NÃO violam as regras definidas nesse modelo conceitual?</p><p>A) C1={x1,x3,x5,x7 }</p><p>C2={ x2,x4,x6,x8}</p><p>B) C1={ x1,x2,x3,x4} C2={ x2,x3,x5,x9}</p><p>C) C1={x0,x1,x2,x3,x4,x5,x6,x7,x8,x9} C2={ }</p><p>D) C1={ x1,x2,x3,x4,x5,x6,x7,x8,x9} C2={ x1,x2,x3,x4,x5,x6,x7,x8,x9}</p><p>E) C1={ }</p><p>C2={ }</p><p>Comentário:</p><p>A generalização acima é total (completa) e compartilhada (sobreposta). Os elementos do</p><p>conjunto abaixo pertencem ao banco de dados em questão, além de serem instâncias da</p><p>entidade C.</p><p>C={x1,x2,x3,x4,x5,x6,x7,x8,x9}</p><p>Quais conjuntos NÃO violam as regras definidas nesse modelo conceitual? As</p><p>especificações/generalizações podem ter 4 tipos de combinações:</p><p>● Disjunta total</p><p>● Disjunta parcial</p><p>● Sobreposta total</p><p>● Sobreposta parcial</p><p>A restrição de completude pode ser parcial ou total. A especialização/generalização parcial</p><p>permite que uma entidade não pertença a uma das subclasses. A especialização/generalização</p><p>total determina que toda entidade da superclasse pertença a pelo menos uma subclasse.</p><p>A restrição de disjunção é classificada em disjunta e sobreposta. A especialização/generalização</p><p>disjunta permite que uma entidade pertença apenas a uma subclasse. A sobreposta permite que</p><p>a entidade pertença a mais de uma subclasse.</p><p>A questão apresenta uma generalização total e sobreposta, portanto toda instância da</p><p>superclasse C deve ser membro de alguma subclasse e pode existir sobreposição, ou seja, uma</p><p>instância da superclasse pode ser membro de mais de uma subclasse.</p><p>a) ERRADO. Faltou a instância x9, que deve ser membro de uma subclasse, porque a</p><p>generalização é total.</p><p>b) ERRADO. Faltaram as instâncias x6, x7 e x8, que devem ser membros de alguma</p><p>subclasse, porque a generalização é total.</p><p>c) ERRADO. O elemento x0 não existe na superclasse. Em um processo de generalização</p><p>total, uma superclasse é derivada das subclasses, então a superclasse deve conter todos os</p><p>elementos presentes nas subclasses.</p><p>d) CORRETO. As subclasses C1 e C2 possuem todas as instâncias da superclasse C. E, por</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>145</p><p>321</p><p>ser uma generalização sobreposta, as subclasses C1 e C2 podem conter as mesmas instâncias.</p><p>e) ERRADO. A generalização é total, então todos os elementos da superclasse devem</p><p>pertencer a pelo menos uma subclasse.</p><p>Gabarito: D</p><p>35. Ano: 2016 Banca: CESGRANRIO Órgão: IBGE Prova: Supervisor de Pesquisas - Tecnologia</p><p>de Informação e Comunicação</p><p>A segunda forma normal está relacionada com o conceito de</p><p>a. dependência funcional parcial</p><p>b. dependência funcional transitiva</p><p>c. dependência multivalorada</p><p>d. tabelas aninhadas</p><p>e. colunas multivaloradas</p><p>Comentário:</p><p>Vamos aproveitar essa questão para nos relembrarmos das primeiras formas normais. A primeira</p><p>forma normal (1FN) diz que todos os atributos de uma relação têm que ser atômicos, ou seja,</p><p>não pode existir atributos compostos ou multivalorados. Já a segunda forma normal (2FN) todo</p><p>atributo não chave deve ser plenamente dependente da chave primária. Em outras palavras não</p><p>deve existir dependência parcial da chave. Lembre-se que só temos problema com a 2FN se a</p><p>chave for composta.</p><p>A terceira forma normal (3FN) manda eliminar as dependências funcionais transitivas. Neste caso</p><p>um atributo não primário determina outro. Por fim, a forma normal de Boyce-Codd (FNBC)</p><p>afirma que todo determinante deve ser chave candidata em uma relação.</p><p>Após essa revisão podemos marcar nossa resposta na alternativa A.</p><p>Gabarito: A</p><p>36. Ano: 2014 Banca: CESGRANRIO Órgão: Petrobras Prova: Técnico(a) de Informática Júnior</p><p>O diagrama de entidades e relacionamentos a seguir representa o modelo de um banco de</p><p>dados sobre o qual é possível deduzir o nível de abstração usado na representação.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>146</p><p>321</p><p>Considerando-se o diagrama acima, para sua implementação direta em um SGBD relacional,</p><p>esse diagrama</p><p>a. não precisa ser transformado.</p><p>b. deve ser transformado em um modelo conceitual</p><p>c. deve ser transformado em um modelo físico</p><p>d. deve ser transformado em um modelo dimensional.</p><p>e. deve ser transformado em um modelo UML.</p><p>Comentário:</p><p>Essa questão trata da teoria de projeto de banco de dados. Veja que temos um modelo descrito</p><p>em uma notação gráfica que pode ser considerado conceitual. Para chegarmos ao nível de</p><p>implementação direta em um SGBD relacional temos que transformar esse modelo em relações</p><p>e em seguida estabelecer o modelo físico para os dados. É bem verdade que os comandos SQL</p><p>ocultam parte dos detalhes internos de armazenamento. Contudo, o SGBDs muitas vezes de</p><p>forma transparente, vai implementar o modelo físico permitindo a persistência dos dados nas</p><p>estruturas de armazenamento. Assim, esse modelo, ao fim e ao cabo, deve ser transformado em</p><p>um modelo físico. Logo, nossa resposta encontra-se na alternativa C.</p><p>Gabarito: C</p><p>37. Ano: 2014 Banca: CESGRANRIO Órgão: Petrobras Prova: Técnico(a) de Informática Júnior</p><p>A álgebra relacional fornece um alicerce formal para as operações do modelo relacional.</p><p>Um técnico de informática reconhece que essas operações permitem que um usuário especifique</p><p>solicitações como expressões da álgebra relacional, nas quais a(o)</p><p>a. operação PROJEÇÃO é usada para escolher um subconjunto das tuplas de uma relação</p><p>que satisfaça uma condição de seleção.</p><p>b. operação de PROJEÇÃO mantém quaisquer tuplas duplicadas, de modo que o resultado</p><p>dessa operação é um conjunto de tuplas que pode conter tuplas repetidas</p><p>c. operação PROJEÇÃO pode selecionar certas colunas da tabela e descartar outras</p><p>d. operação SELEÇÃO é usada para incluir todas as tuplas de duas relações em uma única</p><p>relação, sendo que as tuplas duplicadas são eliminadas</p><p>e. resultado da operação SELEÇÃO pode ser visualizado como uma partição vertical da</p><p>relação original em duas relações: uma tem as colunas (atributos) necessárias e contém o</p><p>resultado da operação, e a outra contém as colunas descartadas</p><p>Comentário:</p><p>A questão trata de duas operações unárias da álgebra relacional. A operação de projeção que</p><p>visa selecionar as colunas de uma relação, fazendo um corte vertical na tabela. Já a operação de</p><p>seleção pode ser utilizada para restringir as linhas ou tuplas de uma relação. Usando a seleção é</p><p>possível fazer um corte horizontal na tabela escolhendo apenas as tuplas que satisfaçam um</p><p>predicado. Sendo assim, ao analisar todas alternativa, podemos marcar nossa resposta na</p><p>alternativa C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>147</p><p>321</p><p>Gabarito: C.</p><p>38. Ano: 2014 Banca: CESGRANRIO Órgão: Banco da Amazônia Prova: Técnico Científico -</p><p>Banco de Dados</p><p>Para responder à questão, tenha como referência o diagrama de entidades e relacionamentos,</p><p>apresentado abaixo, que representa parte do modelo de dados de uma instituição financeira.</p><p>Que expressão em Álgebra Relacional cria, a partir da Tabela Conta, uma Tabela com duas</p><p>colunas, id_conta e debito_bloqueado_sn, contendo apenas as contas com</p><p>credito_bloqueado_sn igual a "S"?</p><p>Comentário:</p><p>Vejam que a questão vai fazer uma projeção sobre as</p><p>colunas id_conta e debito_bloqueado_sn.</p><p>Antes disso, porém, é necessário fazer uma seleção sobre a tabela conta com o seguinte</p><p>predicado: credito_bloqueado_sn = ”S”. Desta forma, usando a precedência representada pelos</p><p>parênteses, podemos achar nossa resposta na alternativa C.</p><p>Gabarito: C.</p><p>39. Ano: 2014 Banca: CESGRANRIO Órgão: Banco da Amazônia Prova: Técnico Científico -</p><p>Analise de Sistemas</p><p>O esquema de um banco de dados relacional é descrito de acordo com a seguinte notação:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>148</p><p>321</p><p>1. uma tabela possui um nome e um conjunto de colunas, separadas por vírgulas. Por</p><p>exemplo, MX(col1,col2,col3,col4) representa uma tabela cujo nome é MX.</p><p>2. os tipos de dados das colunas têm pouca importância para a questão, logo não são</p><p>apresentados.</p><p>3. colunas que admitem o valor nulo são exibidas entre colchetes (por exemplo [col1]).</p><p>4. as colunas que compõem a chave primária de uma tabela estão sublinhadas.</p><p>5. as chaves estrangeiras são representadas da seguinte forma: REF</p><p>Seja o seguinte modelo E-R:</p><p>Qual esquema relacional preserva a semântica do modelo acima?</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>149</p><p>321</p><p>Comentário:</p><p>Essa é uma questão interessantes pois queremos transformar um modelo conceitual em um</p><p>conjunto de relações ou tabelas. Vamos começar pela tabela D. Observamos que cada</p><p>elemento de D se relaciona com até n elementos de E. Percebemos também que o</p><p>relacionamento X possuiu um atributo. Desta forma, temos algumas opções: (1) Levar o atributo</p><p>de X e a chave de D para a relação E ou (2) criar uma relação X para estabelecer o</p><p>relacionamento entre D e E, bem como para gravar o atributo x1. Essa segunda opção foi a</p><p>escolha da questão. Logo, teremos: D (d1,d2) e X (d1, ea, x1). Neste caso, d1 REF D e ea REF E.</p><p>Vejam que já precisamos buscar o atributo e E para compor a chave primária de X juntamente</p><p>com d1. Agora vamos representar a herança, seja da entidade de nível superior seja das suas</p><p>especializações. A relação que representa E terá os atributos ea e eb. Já as especializações</p><p>precisam da chave de E para forma suas tabelas. Desta forma temos que E (ea, eb), E1 (ea, e1a),</p><p>E2(ea, e2a) Veja que tanto em E1 quanto em E2, ea REF E.</p><p>Agora vamos tratar do relacionamento de E2 com F, neste caso, como temos um</p><p>relacionamento 1:1, podemos alocar o atributo do relacionamento e chave de E2 na entidade</p><p>F. Assim ficamos com F(f1, f2, ea, x1). Observe, porém, que o relacionamento não é obrigatório,</p><p>logo existe possibilidade de ea e x1 serem nulos. Desta forma, precisamos ajustar a notação</p><p>para F(f1, f2, [ea], [x1]).</p><p>Juntando toda essa construção acima, podemos encontrar nossa resposta na alternativa B.</p><p>Gabarito: B.</p><p>40. Ano: 2014 Banca: CESGRANRIO Órgão: EPE Prova: Analista de Gestão Corporativa -</p><p>Tecnologia da Informação</p><p>Considere uma relação R seguindo o modelo de dados relacional com os campos atômicos</p><p>F,G,H,J,K, onde F,G compõem a chave primária. Sabe-se que as seguintes dependências</p><p>funcionais, e apenas essas, são válidas:</p><p>F,G→ H F,G→ K F,G→ J</p><p>H→ J</p><p>Dessa forma, a relação R</p><p>a. não está na 1FN</p><p>b. está na 1FN e não está na 2FN</p><p>c. está na 2FN e não está na 3FN</p><p>d. está na FNBC e não está na 3FN</p><p>e. está na 3FN e não está na FNBC</p><p>Comentário:</p><p>Observem que, pelas dependências funcionais do enunciado, F,G → H e H → J. Logo, temos</p><p>um problema com a terceira forma normal, pois aparece uma dependência transitiva.</p><p>Podemos perceber também que todos os dados são atômicos, segundo o enunciado, e que não</p><p>existe dependência parcial. Logo, a relação está na 2FN, mas não está na 3FN, levando nossa</p><p>resposta a alternativa C.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>150</p><p>321</p><p>Gabarito: C.</p><p>41. Ano: 2014 Banca: CESGRANRIO Órgão: FINEP Prova: Analista - Desenvolvimento de</p><p>Sistemas</p><p>O esquema de um banco de dados relacional é descrito segundo a notação a seguir.</p><p>1. Uma tabela possui um nome e um conjunto de colunas, separadas por vírgulas. Por</p><p>exemplo, TX(col1,col2,col3,col4) representa uma tabela cujo nome é TX.</p><p>2. Os tipos de dados das colunas são irrelevantes para a questão, logo não são</p><p>apresentados.</p><p>3. Colunas que admitem o valor nulo são exibidas entre colchetes (por exemplo [col1]).</p><p>4. As colunas que compõem a chave primária de uma tabela estão sublinhadas.</p><p>5. As chaves estrangeiras são representadas da seguinte forma: REF Seja o seguinte modelo</p><p>E-R:</p><p>Qual esquema relacional preserva a semântica do modelo acima?</p><p>A) EG(e1,e2,g1,g2,p1,p2,f1,q1,q2)</p><p>F(f1,f2)</p><p>B) E(e1,e2)</p><p>G(g1,g2,[e1],[p1],[p2])</p><p>e1 REF E</p><p>F(f1,f2,[e1],[q1],[q2])</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>151</p><p>321</p><p>e1 REF E</p><p>C) E(e1,e2,[g1~,[p1],[p2])</p><p>g1 REF G</p><p>G(g1,g2)</p><p>Q(e1,f1,q1,q2)</p><p>e1 REF E</p><p>f1 REF F</p><p>F(f1,f2)</p><p>D) E(e1,e2)</p><p>G(g1,g2,[e1],[p1],[p2])</p><p>e1 REF E</p><p>Q(e1,f1,q1,q2)</p><p>e1 REF E</p><p>f1 REF F</p><p>F(f1,f2)</p><p>E) E(e1,e2)</p><p>G(g1,g2,[e1],[p1],[p2])</p><p>e1 REF E</p><p>Q(e1,f1,q1,q2)</p><p>e1 REF E</p><p>f1 REF F</p><p>F(f1,f2)</p><p>Comentário:</p><p>Essa questão é semelhante a uma que já fizemos anteriormente. Perceba que temos um</p><p>relacionamento 1:1 entre G e E. Logo, podemos optar por trazer os atributos do relacionamento</p><p>P e chave de E para a entidade G. Todos eles devem ser opcionais, pois se uma entidade de G</p><p>não estiver relacionada a E eles terão valores NULOS ou inexistentes. Assim temos, G(g1, g2,</p><p>[e1],[p1],[p2]) com e1 REF E.</p><p>Agora, podemos criara a relação E, outra pra representar o relacionamento entre E e F, além de</p><p>uma terceira para representar a entidade F. Ficamos, portanto, com as seguintes tabelas E(e1,</p><p>e2), F(f1,f2) e G(e1,f1, q1, q2) com e1 REF E e f1 REF F. Veja que f1 não faz parte da chave de G.</p><p>Desta forma, temos nossa resposta na alternativa E.</p><p>Gabarito: E.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>152</p><p>321</p><p>42. Ano: 2012 Banca: CESGRANRIO Órgão: Petrobras Prova: Analista de Sistemas Júnior -</p><p>Processos de Negócios-2012</p><p>Na sua definição teórica, as relações do modelo relacional precisam satisfazer algumas</p><p>propriedades, entre elas a de que:</p><p>a. cada atributo contém um conjunto finito de tuplas.</p><p>b. os atributos são ordenados da esquerda para a direita.</p><p>c. as tuplas são ordenadas do topo para a base.</p><p>d. inexistem tuplas duplicadas.</p><p>e. sempre existe uma tupla identificadora.</p><p>Comentário:</p><p>Segundo Date, as propriedades que precisam ser satisfeitas para que uma tabela possa ser</p><p>considerada uma relação são as seguintes. Dentro de qualquer relação data:</p><p>Cada tupla contém exatamente um valor (do tipo apropriado) para cada atributo.</p><p>Atributos não são ordenados da esquerda para a direita.</p><p>Tuplas não são ordenadas de cima para baixo.</p><p>Não existem tuplas em duplicata.</p><p>Logo, ao analisar as alternativas, podemos encontrar nossa resposta na letra D.</p><p>Gabarito: D .</p><p>43. Ano: 2012 Banca: CESGRANRIO Órgão: LIQUIGÁS Prova: Profissional Júnior -</p><p>Administração de Banco de Dados</p><p>No Modelo Relacional,</p><p>a. as relações são representadas por losangos e ligam duas tabelas.</p><p>b. as tuplas de uma relação não são ordenadas.</p><p>c. o grau de uma relação indica o número de linhas de uma tabela.</p><p>d. os domínios são conjuntos de valores múltiplos.</p><p>e. um esquema de relação é uma coleção de n-tuplas.</p><p>Comentário:</p><p>Primeiramente temos que lembrar que as notações gráficas estão, geralmente, associadas a</p><p>modelos conceituais. Logo, a letra a) está incorreta. Já na alternativa B temos uma propriedade</p><p>que acabemos de observar na questão anterior. A tuplas de uma relação, de fato, não é</p><p>ordenada,</p><p>sendo, portanto, essa a nossa resposta (b).</p><p>As demais alternativas estão incorretas. O grau de uma relação estabelece o número de</p><p>atributos que seu esquema ou modelo contém. Por exemplo, o esquema Estudante (matrícula,</p><p>nome, fone, idade, curso), possui grau igual a 5. Já o domínio estabelece uma restrição sobre os</p><p>valores que uma determinada variável pode assumir. Por fim, o esquema de relação é um</p><p>conjunto de atributos.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>153</p><p>321</p><p>Gabarito: B.</p><p>44. BANCA: CESGRANRIO ANO: 2013 ÓRGÃO: LIQUIGÁS PROVA: ANALISTA DE SISTEMAS</p><p>- TECNOLOGIA DA INFORMAÇÃO</p><p>Seja a seguinte sequência de operações da Álgebra Relacional:</p><p>Considerando-se essa sequência da esquerda para a direita, que operações foram empregadas?</p><p>A) Junção, projeção e seleção</p><p>B) Junção, seleção e projeção</p><p>C) Projeção, junção e seleção</p><p>D) Projeção, seleção e junção</p><p>E) Seleção, projeção e junção</p><p>Comentário:</p><p>As operações são Projeção, Seleção e junção. A junção é do tipo equijoin! Questão bem</p><p>tranquila! Vamos em frente!</p><p>Gabarito: D.</p><p>45. BANCA: CESGRANRIO ANO: 2013 ÓRGÃO: BNDES PROVA: ANALISTA DE SISTEMAS -</p><p>ANALISTA DE SISTEMAS – DESENVOLVIMENTO</p><p>A relação R a seguir foi obtida pela aplicação de uma sequência de operações da Álgebra</p><p>Relacional sobre as relações T e V.</p><p>Que sequência é essa?</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>154</p><p>321</p><p>Comentário:</p><p>Vou comentar apenas a sequência da resposta. Primeiramente é feito um produto cartesiano</p><p>entre as relações T e V. Sobre esse resultado é aplicado uma projeção sobre os atributos T1 e</p><p>V1. Veja que neste resultado intermediário teremos todas as tuplas possíveis entre T1 e V1{(10,</p><p>5), (10,6) (10, 7), (10, 8), (15, 5), (15,6) (15, 7), (15, 8), (20, 5), (20,6), (20, 7),</p><p>(20, 8), (30, 5), (30,6), (30, 7), (30, 8)}. Deste resultado intermediário faremos uma interseção com</p><p>V3, V1 de V, vejam que a ordem dos atributos está invertida, teremos então {(15, 6), (20,6),</p><p>(10,7), (20,8)}. Este será o valor retornado pela interseção também e será atribuído a uma</p><p>variável P(R1,R2).</p><p>A próxima operação vai fazer uma seleção sobre os valores de P, selecionando apenas os valores</p><p>onde R1 é maior que 15. Restando, portanto, {(20,6), (20,8)} que é o resultado que queremos.</p><p>Gabarito: C.</p><p>46. BANCA: CESGRANRIO ANO: 2014 ÓRGÃO: CEFET-RJ PROVA: TECNÓLOGO WEB</p><p>O mundo assistiu em março de 2013 à eleição de um novo Papa. Para facilitar seu trabalho na</p><p>cobertura do evento, um jornal decidiu construir uma base de dados com todos os cardeais. Para</p><p>isso, foram criadas as seguintes tabelas:</p><p>CARDEAL(Nome,Cidade) CIDADEPAIS(Cidade,Pais)</p><p>Que consulta da álgebra relacional lista exclusivamente o nome e o país de todos os cardeais?</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>155</p><p>321</p><p>Comentário:</p><p>A dica para resolver esta questão é lembrar da operação de Natural Join. Vejam que nas duas</p><p>tabelas existe o atributo cidade. A junção é, portanto, feita por meio deste atributo. Em</p><p>seguida precisamos selecionar exclusivamente o nome e o país de todos os cardeais. Para tanto</p><p>basta fazer uma projeção sobre esses atributos no resultado retornado pela junção. Lembre-se</p><p>da propriedade de fechamento da álgebra relacional. O resultado de uma operação é sempre</p><p>outra relação. Vejam que a alternativa que traz essa sequência de passos é a letra B. As outras</p><p>opções fazem uso errado das operações ou não vão obter o resultado desejado. Tentem fazer</p><p>um exercício para descobrir se as alternativas estão erradas sintaticamente ou se produzem um</p><p>resultado equivocado.</p><p>Gabarito: B</p><p>47. BANCA: CESGRANRIO ANO: 2014 ÓRGÃO: PETROBRAS PROVA: TÉCNICO TÉCNICO</p><p>DE INFORMÁTICA</p><p>Considere o esquema relacional abaixo, no qual placa é a chave primária.</p><p>Qual é a expressão em álgebra relacional a ser aplicada sobre esse esquema, de forma a obter</p><p>as Placas dos VEICULOS com Ano igual a 2011 e Valor menor que 9000?</p><p>Comentário:</p><p>Veja que precisaremos de uma projeção sobre o atributo placa, mas antes devemos selecionar</p><p>as tuplas que satisfaçam as duas condições solicitadas. Montamos, portanto, dois predicados</p><p>uma para verificar se o ano é igual a 2011 e outra para filtrar se o preço é menor que 9000.</p><p>Utilizaremos o conectivo AND para interligar os dois predicados. Toda essa consulta é feita</p><p>sobre a relação VEICULO. A resposta desta questão está na alternativa D, é a única alternativa</p><p>que segue a sintaxe correta da álgebra relacional e retorna o resultado correto.</p><p>Gabarito: D</p><p>48. BANCA: CESGRANRIO ANO: 2014 ÓRGÃO: FINEP PROVA: ANALISTA DA FINEP -</p><p>INFORMÁTICA - DESENVOLVIMENTO DE SISTEMAS</p><p>Qual forma normal se baseia no conceito de dependência multivalorada?</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>156</p><p>321</p><p>A) Forma Normal de Boyce-Codd</p><p>B) Primeira Forma Normal</p><p>C) Segunda Forma Normal</p><p>D) Terceira Forma Normal</p><p>E) Quarta Forma Normal</p><p>Comentário:</p><p>Já vimos que a questão das dependências multivaloradas está relacionada a 4FN.</p><p>Gabarito: E.</p><p>49. BANCA: CESGRANRIO ANO: 2014 ÓRGÃO: PETROBRAS PROVA: TÉCNICO TÉCNICO</p><p>DE INFORMÁTICA</p><p>A álgebra relacional fornece um alicerce formal para as operações do modelo relacional. Um</p><p>técnico de informática reconhece que essas operações permitem que um usuário especifique</p><p>solicitações como expressões da álgebra relacional, nas quais a(o)</p><p>A) operação PROJEÇÃO é usada para escolher um subconjunto das tuplas de uma relação que</p><p>satisfaça uma condição de seleção.</p><p>B) operação de PROJEÇÃO mantém quaisquer tuplas duplicadas, de modo que o resultado</p><p>dessa operação é um conjunto de tuplas que pode conter tuplas repetidas.</p><p>C) operação PROJEÇÃO pode selecionar certas colunas da tabela e descartar outras.</p><p>D) operação SELEÇÃO é usada para incluir todas as tuplas de duas relações em uma única</p><p>relação, sendo que as tuplas duplicadas são eliminadas.</p><p>E) resultado da operação SELEÇÃO pode ser visualizado como uma partição vertical da relação</p><p>original em duas relações: uma tem as colunas (atributos) necessárias e contém o resultado da</p><p>operação, e a outra contém as colunas descartadas.</p><p>Comentário:</p><p>A operação de PROJEÇÃO permite selecionar um conjunto de colunas de uma relação. Essa</p><p>operação elimina as tuplas duplicadas do resultado. A operação de SELEÇÃO permite fazer</p><p>filtros sobre os atributos restringindo os valores de determinados atributos. As tuplas retornadas</p><p>por uma SELEÇÃO devem satisfazer ao predicado. Observem que o gabarito que contém um</p><p>texto correto do ponto de vista teórico está presente na alternativa C.</p><p>Comentando a alternativa D, ela está incorreta por atribuir a operação de SELEÇÃO, que é uma</p><p>operação unária, o trabalho realizado pela operação de UNIÃO, que é uma operação binária.</p><p>A alternativa E criou uma operação no modelo relacional , ela não existe. Uma operação</p><p>unária que retorne duas relações. Lembre-se de propriedade de fechamento!</p><p>Gabarito: C.</p><p>50. BANCA: CESGRANRIO ANO: 2014 ÓRGÃO: BANCO DA AMAZÔNIA PROVA: TÉCNICO</p><p>CIENTÍFICO</p><p>- BANCO DE DADOS</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>157</p><p>321</p><p>Considere que K, X, Y e Z são conjuntos de atributos de uma relação R. Sabendo que:</p><p>NÃO é possível garantir que</p><p>A) X→ YZ</p><p>B) X→ Y</p><p>C) XK→ ZK</p><p>D) Y→ K</p><p>E) Y→ ZX</p><p>Comentário:</p><p>Existe um conjunto de propriedades relacionadas a dependências funcionais. Basicamente a</p><p>questão procura verificar seu entendimento a respeito delas. Essas propriedades são conhecidas</p><p>como regras de inferência. Apresentamos abaixo um conjunto de três regras que são conhecidas</p><p>como regras de Armstrong: Reflexiva,</p><p>Aumentativa e Transitiva.</p><p>RI1. (Reflexiva) Se Y é subconjunto de X, então X→Y (Isso também é válido quando X=Y) RI2.</p><p>(Aumentativa) Se X→Y, então XZ→YZ (Notação: XZ significa X U Z)</p><p>RI3. (Transitiva) Se X→ Y e Y→ Z, então X→ Z</p><p>RI1, RI2 e RI3 formam um conjunto completo de regras de inferência, sendo, portanto, sólida e</p><p>completa.</p><p>Por sólida queremos dizer que, dado um conjunto de dependências funcionais F especificado</p><p>para um esquema da relação R, toda dependência que pudermos deduzir para F usando RI1 a</p><p>RI3 será assegurada para qualquer estado de relação r de R que satisfizer as dependências de F.</p><p>Por completa queremos dizer que, se usarmos RI1 a RI3 sucessivamente para deduzir outras</p><p>dependências funcionais, até que mais nenhuma dependência possa ser deduzida, resultará no</p><p>conjunto completo de todas as dependências possíveis que podem ser inferidas para F.</p><p>Podemos citar ainda outras regras, são elas:</p><p>RI4 (Decomposição) Se X→YZ, então X→Y e X→Z</p><p>RI5 (Aditiva) Se X→Y e X→Z, então X→YZ</p><p>RI6 (Pseudotransitiva) Se X→Y e WY→Z, então WX→Z</p><p>Agora que temos conhecimento do conjunto de regras de inferência, vamos analisar cada uma</p><p>das alternativas baseada nas dependências funcionais iniciais:</p><p>A X→ YZ – Se Y é subconjunto de X podemos garantir que X→Y. Como Y→Z, pela transitividade</p><p>podemos garantir que X → Z. Desta forma podemos inferir pelas regras aditivas que X → YZ.</p><p>Logo essa inferência é possível.</p><p>B X→ Y – Se Y é subconjunto de X podemos garantir que X→Y.</p><p>C XK→ ZK – Já vimos acima que X→ Z, pela aumentativa podemos concluir que XK→ ZK</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>158</p><p>321</p><p>D Y→ K – Usando a transitividade se Y→ Z e Z→ K, então Y→ K</p><p>E Y → ZX – Podemos resolver a questão por eliminação, mas veja que não tem nenhuma regra</p><p>que consiga, por meio de inferência, definir que Y → ZK. A alternativa E é nossa resposta, por</p><p>não conseguimos inferi-la por nenhuma das regras apresentadas.</p><p>Gabarito: E</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>159</p><p>321</p><p>QUESTÕES COMENTADAS FGV</p><p>QUESTÕES COMENTADAS</p><p>Aproveitamos este espaço para complementar seu entendimento sobre o assunto, sempre</p><p>colocando pinceladas extras de conteúdo. Na lista abaixo resolvemos incluir apenas questões da</p><p>FGV. Essas questões abordam os assuntos vistos nesta nossa aula: modelo relacional, álgebra</p><p>relacional e formas normais. A minha sugestão é que, antes de tentar fazer as questões você</p><p>assista aos vídeos sobre o assunto associados a essa aula.</p><p>1. FGV - Ana (PGM Niterói)/Pref Niterói/Tecnologia da Informação/2023 - TI - Banco de Dados -</p><p>Conceitos e Fundamentos de Modelo Relacional</p><p>Dependências funcionais são usadas no processo de normalização de tabelas em projetos de</p><p>bancos de dados relacionais e possuem propriedades que permitem a derivação de novas</p><p>dependências. Considerando-se os atributos A, B, C de uma tabela relacional T, a derivação</p><p>que NÃO é válida é:</p><p>a) A, B, C → A, B;</p><p>b) se A → B e A → C então A → B, C;</p><p>c) se A → B e B → C então A → C;</p><p>d) se A → C então A, B →→ B, C;</p><p>e) se B → A e C → A então B → C.</p><p>Comentário: Vamos revisar as propriedades das Dependências Funcionais (também</p><p>conhecidos como axiomas de Armstrong)</p><p>Reflexividade Se Y está contido em X, então X → Y</p><p>Incremento/Aditiva Se X → Y, então XZ → YZ</p><p>Transitividade Se X → Y e Y → Z, então X → Z</p><p>Auto-Reflexividade X → X</p><p>Decomposição Se X → YZ, então X → Y e X → Z</p><p>União Se X → Y e X → Z então X → YZ</p><p>Composição Se X → Y e A → B então XA → YB</p><p>Agora para responder à questão, abaixo analisamos cada uma das alternativas e</p><p>caracterizamos com a propriedade que está presente:</p><p>a) A, B, C → A, B; - Reflexidade (a,b) está contido em (a,b,c)</p><p>b) se A → B e A → C então A → B, C; - União</p><p>c) se A → B e B → C então A → C; - Transitividade</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>160</p><p>321</p><p>d) se A → C então A, B → B, C; - Incremento</p><p>e) se B → A e C → A então B → C. - Essa afirmativa não se encaixa em nenhuma regra,</p><p>portanto não é válida!</p><p>Gabarito: E</p><p>2. FGV - FTE (SEFAZ MT)/SEFAZ MT/2023 - TI - Banco de Dados - Normalização</p><p>A normalização das estruturas de dados é uma etapa importante do processo de modelagem</p><p>relacional para eliminar distorções ou anomalias no modelo.</p><p>Diz-se que uma tabela está na segunda forma normal, de acordo com as regras de</p><p>normalização, se ela está na primeira forma normal e</p><p>a) as linhas da tabela são unívocas, sem chaves compostas e todos os seus atributos são</p><p>atômicos.</p><p>b) as linhas não contêm itens repetitivos, atributos com valores nulos e nem</p><p>multidimensionais.</p><p>c) cada uma das colunas não pertencentes à chave primária não for dependente</p><p>parcialmente dessa chave.</p><p>d) contém apenas chaves externas e conecta-se a outras tabelas por múltiplas junções.</p><p>e) as colunas não pertencentes à chave primária ficam determinadas transitivamente por</p><p>esta.</p><p>Comentário: A segunda forma normal (2FN) em uma tabela, de acordo com as regras de</p><p>normalização, é alcançada quando:</p><p>c) cada uma das colunas não pertencentes à chave primária não for dependente parcialmente</p><p>dessa chave.</p><p>Isso significa que cada coluna não pertencente à chave primária deve ser totalmente</p><p>dependente da chave primária, eliminando assim dependências parciais. Essa é uma das</p><p>condições para que uma tabela esteja na segunda forma normal (2FN).</p><p>Gabarito: C</p><p>3. FGV - AJ (TJ RN)/TJ RN/Apoio Especializado/Análise de Sistemas/2023 - TI - Banco de Dados -</p><p>Conceitos e Fundamentos de Modelo Relacional</p><p>Supondo que no Brasil</p><p>- todo brasileiro tem um, e somente um, CPF;</p><p>- alguns brasileiros têm um, mas somente um, passaporte válido;</p><p>- alguns brasileiros têm uma, mas somente uma, carteira de motorista (CNH) válida.</p><p>A definição correta desses atributos numa tabela relacional normalizada seria:</p><p>a) CPF varchar(11) not null</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>161</p><p>321</p><p>CNH varchar(9) UNIQUE</p><p>Passaporte varchar(9) UNIQUE</p><p>b) CPF varchar(11) not null UNIQUE</p><p>CNH varchar(9) UNIQUE</p><p>Passaporte varchar(9) UNIQUE</p><p>c) CPF varchar(11) UNIQUE</p><p>CNH varchar(9) not null</p><p>Passaporte varchar(9) not null</p><p>d) CPF varchar(11) not null</p><p>CNH varchar(9) null</p><p>Passaporte varchar(9) null</p><p>e) CPF varchar(11) null</p><p>CNH varchar(9) UNIQUE</p><p>Passaporte varchar(9) UNIQUE</p><p>Comentário: A definição correta dos atributos numa tabela relacional normalizada é:</p><p>b) CPF varchar(11) not null UNIQUE</p><p>CNH varchar(9) UNIQUE</p><p>Passaporte varchar(9) UNIQUE</p><p>Nesse caso, CPF é definido como not null (não pode ser nula) e único (chave única) para</p><p>garantir que cada brasileiro tenha um, e somente um, CPF. CNH e Passaporte também são</p><p>definidos como únicos (caso cada brasileiro tenha apenas um deles) e podem ser nulos para</p><p>indicar que a pessoa não possui esses documentos.</p><p>Resumindo temos que:</p><p>● todo brasileiro tem um, e somente um, CPF (restrição not null e UNIQUE), garantindo</p><p>que cada indivíduo tenha um CPF exclusivo registrado.</p><p>● alguns brasileiros têm um, mas somente um, passaporte válido (restrição UNIQUE),</p><p>indicando que nem todos os brasileiros possuem um passaporte, mas aqueles que têm</p><p>possuem apenas um registro válido.</p><p>● alguns brasileiros têm uma, mas somente uma, carteira de motorista (CNH) válida</p><p>(restrição UNIQUE), o que significa que nem todos os brasileiros possuem CNH, mas</p><p>aqueles que têm possuem apenas um registro válido.</p><p>Gabarito: B</p><p>1. FGV - 2023 - Auditor do Estado (CGE SC)/Ciências da Computação</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>162</p><p>321</p><p>==1365fc==</p><p>Um Sistema de Gerenciamento</p><p>de Banco de Dados Relacional (SGBDR) permite manipular</p><p>bancos de dados sobre uma camada de software, dispondo os dados em formato de tabelas</p><p>ao invés de arquivos em pastas. Para servir à finalidade de aplicações transacionais, as boas</p><p>práticas apontam o uso do conceito de normalização.</p><p>Assinale a afirmativa incorreta em relação às vantagens da normalização.</p><p>A Melhora a performance de consultas analíticas em um Data Warehouse, pois o modelo</p><p>dimensional estrela depende da normalização.</p><p>B A metodologia em etapas (1FN -> 2FN -> 3FN) facilita o processo de eliminação de</p><p>dependências funcionais.</p><p>C Diminui o esforço computacional de operações de UPDATE, pois as atualizações ocorrem</p><p>apenas onde necessário.</p><p>D Economiza espaço em disco, pois evita repetições de dados.</p><p>E Melhora o desempenho geral sistêmico de uma aplicação, sobretudo com grandes volumes</p><p>de dados, pois as transações ocorrem sob escopos específicos.</p><p>Comentário: A afirmativa incorreta é a seguinte:</p><p>A) Melhora a performance de consultas analíticas em um Data Warehouse, pois o modelo</p><p>dimensional estrela depende da normalização.</p><p>Esta afirmativa está incorreta, pois no contexto de um Data Warehouse, é comum usar o</p><p>modelo dimensional, como o modelo estrela ou floco de neve, que é uma abordagem de</p><p>desnormalização. Nesses modelos, os dados são estruturados de forma a otimizar a</p><p>recuperação de informações analíticas, muitas vezes sacrificando a normalização em prol da</p><p>performance de consulta. Portanto, a normalização não é a prática comum em Data</p><p>Warehouses e não é utilizada para melhorar o desempenho de consultas analíticas nesse</p><p>contexto.</p><p>Gabarito: A.</p><p>2. FGV - 2023 - Analista (DPE RS)/Apoio Especializado (TI)/Banco de Dados</p><p>A primeira forma normal, utilizada no processo de normalização de um banco de dados</p><p>relacional, estabelece que:</p><p>A não haja linhas duplicadas numa tabela;</p><p>B não haja colunas idênticas numa tabela;</p><p>C em nenhuma das linhas de uma tabela haja valores múltiplos armazenados na mesma</p><p>coluna;</p><p>D em qualquer tabela deve haver uma coluna que possa ser declarada como chave primária;</p><p>E não haja transitividade de dependências funcionais entre as colunas.</p><p>Comentário: A primeira forma normal (1FN) estabelece que: C) Em nenhuma das linhas de</p><p>uma tabela haja valores múltiplos armazenados na mesma coluna.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>163</p><p>321</p><p>A 1FN requer que cada coluna da tabela contenha apenas valores atômicos, ou seja, valores</p><p>indivisíveis, sem múltiplos valores armazenados na mesma coluna. Ela trata de evitar a</p><p>repetição de grupos de valores em uma única coluna, o que é uma prática não normalizada.</p><p>Portanto, a alternativa C é a correta em relação à primeira forma normal.</p><p>Gabarito: C</p><p>3. FGV - 2022 - Agente de Tributos Estaduais (SEFAZ BA)/Tecnologia da Informação</p><p>Considerando as restrições do modelo de dados relacionais e os esquemas de bancos de</p><p>dados relacionais, aquelas que não podem ser expressas diretamente nos modelos de dados</p><p>e, portanto, devem ser expressas e impostas pelos programas de aplicação, denominam-se</p><p>restrições</p><p>A inerentes.</p><p>B explicitas.</p><p>C de atributo.</p><p>D semânticas;</p><p>E de domínio.</p><p>Comentário: As restrições semânticas são aquelas que não podem ser expressas diretamente</p><p>nos modelos de dados e, portanto, devem ser expressas e impostas pelos programas de</p><p>aplicação. Elas são derivadas do significado dos dados e são específicas para a aplicação. As</p><p>restrições semânticas incluem restrições de integridade referencial, restrições de unicidade,</p><p>restrições de verificação e outras restrições que se relacionam com o significado dos dados.</p><p>Gabarito: D</p><p>4. FGV - 2022 - Especialista em Saúde (SEMSA Manaus)/Analista de Banco de Dados (e mais</p><p>1 concurso)</p><p>Suponha a existência dos atributos V, W, X, Y, Z numa tabela de banco de dados relacional, e</p><p>considere as seguintes assertivas sobre dependências funcionais e seus axiomas.</p><p>I. Se W→X e W→Y então X→Y</p><p>II. Se X→Y então XW→YW</p><p>III. XY→X</p><p>IV. Se X→Y e Y→Z e Z→V então X→V</p><p>Estão corretas as afirmativas</p><p>A I, II, III e IV.</p><p>B I e III, somente.</p><p>C I, II e IV, somente.</p><p>D II e IV, somente.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>164</p><p>321</p><p>E II, III e IV, somente.</p><p>Comentário: Vamos relembrar das regras ou axiomas de Armstrong:</p><p>Perceba que a única regra que não aparece na lista a acima é a do item I. Vamos construir um</p><p>exemplo para comprovar que o item I está errado. Imagine uma tabela que contenha todos os</p><p>brasileiros e suponha que o atributo W seja o CPF da pessoa (chave primária), X a idade e Y a</p><p>cidade de nascimento.</p><p>O número de CPF é suficiente para definir unicamente uma pessoa e, portanto, sua idade e</p><p>sua cidade natal (W → X e W→ Y). Porém, a idade apenas não é suficiente para determinar a</p><p>cidade de nascimento de alguém (então X→ Y é falso).</p><p>Gabarito: E</p><p>5. FGV - 2022 - Especialista em Saúde (SEMSA Manaus)/Analista de Banco de Dados</p><p>Para a próxima s questãos, considere do banco de dados relacional happyhour, que contém</p><p>três tabelas, a saber.</p><p>frequencia (cliente, bar)</p><p>preferencia (cliente, cerveja)</p><p>oferta (bar, cerveja)</p><p>A relação frequencia registra o(s) bar(es) que cada cliente frequenta, e tem dois atributos:</p><p>nome do cliente e nome do bar;</p><p>A relação preferencia armazena a(s) cerveja(s) preferida(s) por cada cliente e tem dois</p><p>atributos: nome do cliente e nome da cerveja;</p><p>A relação oferta relaciona a(s) cerveja(s) que cada bar serve, também com dois atributos:</p><p>nome do bar e nome da cerveja.</p><p>É dado que todo cliente frequenta pelos menos um bar, que nem todos os clientes têm</p><p>preferências, que todo bar oferece pelo menos uma cerveja e que toda cerveja é oferecida</p><p>pelo menos por um bar.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>165</p><p>321</p><p>Assinale o esquema correto para a definição de chaves/identificadores para as tabelas do</p><p>banco de dados happyhour.</p><p>A Em cada tabela, cada coluna é declarada como identificador pela cláusula unique.</p><p>B Em cada tabela, as duas colunas em conjunto formam a primary key.</p><p>C Nenhuma tabela com especificação de identificador ou primary key.</p><p>D Em cada tabela, cada coluna é declarada como identificador pela cláusula unique e</p><p>declarada como chave estrangeira para as demais tabelas.</p><p>E Em cada tabela, as duas colunas em conjunto formam a primary key e são declaradas, em</p><p>conjunto, chaves estrangeiras para as demais tabelas.</p><p>Comentário: Nas três tabelas, se considerarmos apenas uma das colunas separadamente,</p><p>poderemos ter valores repetidos. Esse é o tipo de tabela que precisamos de todos os</p><p>atributos para compor a chave primária. Isso vai garantir a sua unicidade. Por exemplo, em</p><p>relação à tabela frequencia, um mesmo cliente pode frequentar mais de um bar (caso que faz</p><p>com que o nome do cliente apareça mais de uma vez na tabela), e um mesmo bar pode ser</p><p>frequentado por mais de um cliente (caso que faz com que o nome do bar apareça mais de</p><p>uma vez na tabela). Assim, em nenhuma tabela, algum atributo individualmente pode ser</p><p>considerado chave primária (primary key). O mesmo ocorre nas outras tabelas. Assim, em</p><p>cada tabela, realmente as duas colunas em conjunto devem formar a primary key. Logo,</p><p>temos a nossa reposta na alternativa B.</p><p>Gabarito: B</p><p>6. FGV - 2022 - Auditor Federal de Controle Externo (TCU)/Controle Externo/Auditoria</p><p>Governamental</p><p>Para a questão a seguir, considere uma tabela relacional R, com atributos W, X, Y, Z, e o</p><p>conjunto de dependências funcionais identificadas para esses atributos.</p><p>X→ Y</p><p>X→ Z</p><p>Z→ X</p><p>Z→W</p><p>Analise o conjunto de dependências funcionais inferidas abaixo a partir do conjunto de</p><p>atributos e dependências funcionais presentes na tabela R, como descrita anteriormente.</p><p>(1) X→ Y Z W</p><p>(2) X→W</p><p>(3) X W→ Y W</p><p>(4) X Y Z W→ X Y</p><p>de que uma relação não é exatamente uma</p><p>tabela. A relação é um objeto formal, enquanto a tabela é um objeto informal que pode ser</p><p>representada em uma folha de papel. Vejamos algumas das diferenças entre tabelas e relações:</p><p>Analise as afirmações abaixo:</p><p>Cada tupla contém exatamente um valor (do tipo apropriado) para cada um de seus atributos.</p><p>Existe ordenação da esquerda para a direita nos componentes de uma tupla, basta</p><p>observarmos uma tabela desenhada em um papel para constar tal fato.</p><p>Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é um</p><p>cabeçalho).</p><p>Quanto às propriedades das tuplas, é correto o que consta APENAS em</p><p>A) I., II. e III.</p><p>B) II</p><p>C) III</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>14</p><p>321</p><p>==1365fc==</p><p>D) I e.II</p><p>E) Ie III</p><p>Comentário:</p><p>Acabamos de aprender sobre as propriedades de uma tupla. Perceba que as afirmações I e III</p><p>são substratos das propriedades (a) e (c) descritas acima. Já a afirmação II mostra exatamente a</p><p>minha preocupação com o seu entendimento de que uma relação não é exatamente uma</p><p>tabela. A relação é um objeto formal, enquanto a tabela é um objeto informal que pode ser</p><p>representada em uma folha de papel. Vejamos algumas das diferenças entre tabelas e relações:</p><p>Analise as afirmações abaixo:</p><p>Cada tupla contém exatamente um valor (do tipo apropriado) para cada um de seus atributos.</p><p>Existe ordenação da esquerda para a direita nos componentes de uma tupla, basta</p><p>observarmos uma tabela desenhada em um papel para constar tal fato.</p><p>Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é um</p><p>cabeçalho).</p><p>Quanto às propriedades das tuplas, é correto o que consta APENAS em</p><p>A) I, II e III</p><p>B) II</p><p>C) III</p><p>D) I e.II</p><p>E) Ie III</p><p>Comentário:</p><p>Acabamos de aprender sobre as propriedades de uma tupla. Perceba que as afirmações I e III</p><p>são substratos das propriedades (a) e (c) descritas acima. Já a afirmação II mostra exatamente a</p><p>minha preocupação com o seu entendimento de que uma relação não é exatamente uma</p><p>tabela. A relação é um objeto formal, enquanto a tabela é um objeto informal que pode ser</p><p>representada em uma folha de papel. Vejamos algumas das diferenças entre tabelas e relações:</p><p>Característica Relação Tabela</p><p>Nomes de tipo são omitidos nos</p><p>cabeçalhos.</p><p>Não Sim</p><p>(normalmente)</p><p>Nomes de tipo e do atributo</p><p>normalmente são omitidos no corpo. Não Sim</p><p>Atributos/colunas possuem uma ordem</p><p>da esquerda para a direita. (Releia a</p><p>explicação do quadro da página 11)</p><p>Não Sim</p><p>As tuplas/linhas possuem uma ordem de</p><p>cima para baixo.</p><p>Não Sim</p><p>Pode conter tuplas/linhas duplicadas. Não Sim3</p><p>Assim, podemos avaliar a segunda afirmação como falsa e achar nossa resposta na alternativa</p><p>E.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>15</p><p>321</p><p>Gabarito: E</p><p>Falamos das propriedades importantes das tuplas. Neste momento, vamos falar das</p><p>propriedades importantes das relações. Dentro de qualquer relação, temos as seguintes</p><p>propriedades de acordo com CJ Date:</p><p>3Neste caso, pense em uma tabela do Excel. Se estivermos falando de uma tabela no modelo relacional, ela não pode conter</p><p>linhas duplicadas e todos os seus atributos devem ser atômicos.</p><p>Figura 4 - Propriedades de uma relação.</p><p>Buscando praticar os conceitos adquiridos até aqui, vamos fazer duas questões do CESPE</p><p>sobre o assunto e mostrar que estamos alinhados com o conteúdo que vem sendo cobrado em</p><p>concursos públicos.</p><p>Ano: 2018 Banca: CESPE Órgão: TCM-BA Cargo: Auditor de Contas Questão: 09 Considerando</p><p>os conceitos de banco de dados relacionais, assinale a opção correta a respeito das</p><p>propriedades de uma tupla.</p><p>A) A tupla tem o mesmo significado e as mesmas propriedades de uma tabela.</p><p>B) Os componentes de uma tupla são ordenados da esquerda para a direita.</p><p>C) Cada tupla contém exatamente um valor para cada um de seus atributos.</p><p>D) Um subconjunto de uma tupla não é considerado uma tupla.</p><p>E) Uma tupla nunca é vazia, seu grau pode variar de 1 até n.</p><p>Comentário:</p><p>Vimos que as tuplas são linhas de uma tabela. Elas, quando consideramos a referência teórica e</p><p>matemática do modelo relacional, não são ordenadas e não se repetem. Vejam que a questão</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>16</p><p>321</p><p>acima usou como referencial teórico o livro do Date. Vamos agora analisar cada uma das</p><p>alternativas acima:</p><p>A tupla é a linha da tabela. Representa uma instância ou um valor armazenado. Pense na tabela</p><p>aluno, cada aluno armazenado é uma tupla da tabela. Contudo, uma tabela pode ter atributos</p><p>que não são específicos da tupla, como a quantidade máxima de registros. Logo, não podemos</p><p>definir o todo pela parte, nem podemos dizer que a forma do bolo é um bolo. Sendo assim, a</p><p>alternativa está incorreta.</p><p>As tuplas não são ordenadas de cima para baixo, nem seus atributos ou componentes são</p><p>ordenados da esquerda para a direita.</p><p>Pela definição de modelo relacional do Codd, os atributos de uma relação devem ter valores</p><p>atômicos. Logo, cada coluna deve ter um valor dentro do seu respectivo domínio. Este pode ou</p><p>não aceitar valores nulos. Sendo assim, essa afirmação está certa.</p><p>Um subconjunto de uma tupla é outra tupla. Inclusive, se lembrarmos da propriedade de</p><p>fechamento das operações de álgebra relacional, podemos perceber que o resultado de uma</p><p>projeção vai reduzir as tuplas de uma tabela aos atributos definidos na operação.</p><p>Uma tupla de uma tabela pode ser vazia, ela é conhecida como empty tuple ou nullary tuple.</p><p>Para preencher valores desconhecidos, usamos o valor nulo, que é uma notação para vazio.</p><p>Além disso, ela representa um conjunto de atributos. A quantidade de atributos de uma tupla é</p><p>denominada grau e pode variar de 0 até n. Logo, temos mais uma alternativa incorreta.</p><p>Gabarito: C</p><p>Ano: 2015 Banca: CESPE Órgão: STJ Prova: Analista Judiciário - Análise de Sistemas de</p><p>Informação</p><p>Acerca de modelagem relacional e pontos de função, julgue o item a seguir.</p><p>O modelo relacional consiste em uma coleção ilimitada de tipos escalares e de um operador de</p><p>atribuição relacional que atribui valores às variáveis de relações que integram os componentes</p><p>desse modelo.</p><p>Comentário:</p><p>Vamos relembrar o que aprendemos na nossa aula. Apresentamos um conjunto de componentes</p><p>definidos pelo Date para banco de dados relacionais. Segundo ele, o modelo relacional consiste</p><p>em cinco componentes:</p><p>Uma coleção ilimitada de tipos escalares, incluindo em particular o tipo booleano ou valor</p><p>verdade. (TIPOS DE DADOS)</p><p>Um gerador de tipo de relação e uma interpretação pretendida para esses tipos de relações. (A</p><p>EXISTÊNCIA DAS TABELAS)</p><p>Recursos para definição de RelVars desses tipos de relações gerados. (DDL – DEFINIÇÃO –</p><p>UMA LINGUAGEM PARA CONSTRUIR AS TABELAS)</p><p>Um operador de atribuição relacional para atribuição de valores de relações a essas RelVars.</p><p>(DML – MANIPULÇÃO/INSERSÃO DE VALORES NAS TABELAS)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>17</p><p>321</p><p>Uma coleção ilimitada de operadores relacionais genéricos para derivar valores de relações a</p><p>partir de outros valores de relações. (OPERAÇÕES)</p><p>Veja que os componentes com termos em negrito são justamente os usados na assertiva em</p><p>questão. Logo, temos uma alternativa correta.</p><p>Gabarito: C</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>18</p><p>321</p><p>VISÕES</p><p>As views ou visões são objetos SQL que podemos criar dentro dos nossos bancos de dados. Uma</p><p>VIEW é um comando SQL que é armazenado no banco de dados e possui um nome associado a</p><p>ela. Podemos observar algumas funções básicas. A primeira é facilitar a</p><p>(5) Y→ Z</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>166</p><p>321</p><p>À luz dos axiomas da teoria de projeto de bancos de dados aplicáveis nesse caso, é correto</p><p>concluir que, dentre essas dependências inferidas:</p><p>A somente 2 é válida;</p><p>B somente 1, 2 e 5 são válidas;</p><p>C somente 1, 2, 3 e 4 são válidas;</p><p>D somente 2, 3, 4 e 5 são válidas;</p><p>E todas são válidas.</p><p>Comentários: Retomamos a uma questão que cobra a compreensão dos axiomas de</p><p>Armstrong. Dentre as dependências funcionais descritas, apenas a 5 não é possível ser</p><p>inferida a partir dos axiomas e das dependências funcionais iniciais. Logo, temos a nossa</p><p>resposta na alternativa D. Vamos relembrar dos axiomas:</p><p>Gabarito: C</p><p>7. FGV - 2022 - Especialista em Saúde (SEMSA Manaus)/Analista de Banco de Dados</p><p>No contexto da teoria relacional para bancos de dados, seja R uma tabela relacional definida</p><p>pelo conjunto de colunas C = {C1, C2, ... , Cn}.</p><p>Sendo X e Y subconjuntos de C, a dependência funcional X→ Y é verificada, para qualquer par</p><p>de linhas t1, t2 da relação R, distintas entre si, no seguinte caso:</p><p>A se t1[X] t2[X] então t1[Y]t2[Y] ], onde t1 t2.</p><p>B se t1[X] t2[X] então t1[Y]=t2[Y] ], onde t1 = t2.</p><p>C se t1[X] = t2[X] então t1[Y]t2[Y] ], onde t1 t2.</p><p>D se t1[X] = t2[X] então t1[Y]=t2[Y] ], onde t1 = t2.</p><p>E se t1[X] = t2[X] então t1[Y]=t2[Y], onde t1 t2.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>167</p><p>321</p><p>Comentário: Essa questão pede para você entender a formulação matemática para a</p><p>definição de dependência funcional. Para que X ฀ Y (lê-se X determine Y) é necessário que,</p><p>para cada parte de tuplas escolhido ao acaso, se o valor de X for o mesmo nas duas linhas o</p><p>valor de Y também será. Isso é o que está descrito na alternativa E.</p><p>Gabarito: E</p><p>8. FGV - 2022 - Analista Judiciário (TRT 16ª Região)/Apoio Especializado/Tecnologia da</p><p>Informação</p><p>ATENÇÂO: Na próxima questão, considere o esquema relacional de um banco de dados numa</p><p>instalação SQL Server na qual os nulos são tratados como valores desconhecidos (unknow).</p><p>create table X(A int not null primary key,</p><p>B int)</p><p>create table Y(A int not null UNIQUE,</p><p>constraint fk</p><p>foreign key (A) references X(A)</p><p>on delete cascade)</p><p>Para todos os efeitos, suponha que o número de linhas em cada tabela é diferente de zero</p><p>Assinale a afirmativa correta a respeito do esquema relacional apresentado.</p><p>A a tabela X admite linhas duplicadas.</p><p>B a tabela X não pode ter mais linhas que a tabela Y.</p><p>C a tabela Y admite linhas duplicadas.</p><p>D a tabela Y não pode ter mais linhas que a tabela X.</p><p>E as tabelas X e Y não podem ter o mesmo número de linhas.</p><p>Comentário: Tabela X é definida da seguinte maneira:</p><p>● Coluna A é a chave primária da tabela e é obrigatória (NOT NULL) e exclusiva (UNIQUE).</p><p>● Coluna B é uma coluna adicional sem restrições relevantes para nossa análise.</p><p>Tabela Y é criada com apenas uma coluna:</p><p>● Coluna A, que atua como uma chave estrangeira (foreign key) referenciando a coluna A da</p><p>tabela X. Embora geralmente não haja restrição em permitir valores repetidos na coluna</p><p>referenciada por uma chave estrangeira, neste caso específico, a restrição UNIQUE foi</p><p>aplicada explicitamente a ela.</p><p>Para entender por que a tabela Y não pode ter mais linhas do que a tabela X, considere o</p><p>seguinte cenário: Se a tabela X fosse inicialmente criada com quatro linhas, onde as chaves</p><p>primárias são 11, 22, 33 e 44, a tabela Y referenciará a tabela X usando a chave estrangeira.</p><p>Devido à restrição UNIQUE na coluna A da tabela Y, a tabela Y pode ser construída com:</p><p>● 1 linha (por exemplo, 33).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>168</p><p>321</p><p>● 2 linhas (por exemplo, 22 e 44).</p><p>● 3 linhas (por exemplo, 11, 33 e 44).</p><p>● Ou até mesmo 4 linhas (11, 22, 33 e 44). No entanto, a tabela Y nunca pode ter mais linhas</p><p>do que isso, pois não haveria mais chaves da tabela X para serem referenciadas, em</p><p>conformidade com a restrição UNIQUE na coluna A da tabela Y.</p><p>Gabarito: D</p><p>9. FGV - 2022 - Analista Técnico (TCE TO)/Tecnologia da Informação</p><p>No contexto da Teoria de Projeto de bancos de dados relacionais, analise o script de criação</p><p>de uma tabela.</p><p>CREATE TABLE T(A int not null UNIQUE,</p><p>B int not null UNIQUE,</p><p>C int)</p><p>Considere ainda as seguintes dependências funcionais acerca dos atributos A, B e C.</p><p>A→ B</p><p>B→ A</p><p>A→ C</p><p>B→ C</p><p>As dependências necessárias para que o esquema relacional acima esteja normalizado até a</p><p>Forma Normal Boyce-Codd são:</p><p>A todas, exceto a primeira;</p><p>B todas, exceto a segunda;</p><p>C todas, exceto a terceira;</p><p>D todas, exceto a quarta;</p><p>E todas.</p><p>Comentário: A resposta correta é a letra E, "todas". Isso significa que todas as dependências</p><p>funcionais fornecidas no contexto são necessárias para que o esquema relacional esteja</p><p>normalizado até a Forma Normal Boyce-Codd (FNBC). A FBNC afirma que todo determinante</p><p>deve ser chave candidata, logo, supondo que A seja a chave da relação, por B ser um</p><p>determinante, ele também precisa ser chave. Logo, todas as dependências são necessárias.</p><p>Gabarito: E</p><p>10. FGV - 2022 - Técnico Legislativo (CM Taubaté)/Informática</p><p>No contexto dos bancos de dados relacionais, analise a declaração de uma chave estrangeira</p><p>na criação de uma tabela T2, exibida a seguir.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>169</p><p>321</p><p>CONSTRAINT FK_TESTE FOREIGN KEY (A)</p><p>REFERENCES T1(A)</p><p>Considere ainda as seguintes afirmativas a respeito desse comando e suas consequências:</p><p>I. A coluna A na tabela T1 deve ser definida como chave primária ou equivalente.</p><p>II. A coluna A da tabela T2 não pode conter valores nulos.</p><p>III. A coluna A da tabela T2 não pode ser declarada como chave primária ou equivalente.</p><p>Está correto somente o que se afirma em</p><p>A. I.</p><p>B. II.</p><p>C. III.</p><p>D. I e II.</p><p>E. II e III.</p><p>Comentário: Vamos comentar cada uma das alternativas: I. Para cumprir a restrição de chave</p><p>estrangeira (FK) descrita no comando, a coluna A na tabela T1 deve ser definida como chave</p><p>primária ou equivalente.</p><p>II. A presença de uma restrição de chave estrangeira (FK) não implica na impossibilidade de</p><p>conter valores nulos na coluna A da tabela T2. Se você deseja que a coluna A não contenha</p><p>valores nulos, você precisaria incluir uma restrição NOT NULL adicional na definição da</p><p>coluna.</p><p>III. A declaração da coluna A como chave primária ou equivalente na tabela T2 não é proibida</p><p>pela existência da restrição de chave estrangeira (FK) descrita no comando. No entanto, ao</p><p>fazer isso, é crucial garantir que os valores da coluna A na tabela T2 estejam presentes na</p><p>tabela T1, a fim de evitar violações da restrição FK.</p><p>Logo, apenas a afirmação I está correta.</p><p>Gabarito: A</p><p>11. FGV - 2022 - Analista (MPE GO)/Informática</p><p>No Campeonato Brasileiro de Futebol, todos os times jogam entre si duas vezes, alternando</p><p>os papeis de mandante e visitante. Um time não pode jogar mais de uma vez na mesma data.</p><p>Nesse contexto, considere uma tabela de bancos de dados que armazene simplificadamente</p><p>essas informações, com as seguintes colunas:</p><p>- time_mandante</p><p>- time_visitante</p><p>- data</p><p>- gols_mandante</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>170</p><p>321</p><p>- gols_visitante</p><p>À luz dessas premissas, assinale a lista com todas as combinações de colunas que devem,</p><p>necessária e exclusivamente, ser estabelecidas como restrições (primary key ou unique) para</p><p>atender à Forma Normal Boyce-Codd.</p><p>A (time_mandante, time_visitante)</p><p>B (time_mandante, data)</p><p>(time_visitante, data)</p><p>C (time_mandante, data, gols_mandante)</p><p>(time_visitante, data, gols_visitante)</p><p>D (time_mandante, time_visitante)</p><p>(time_visitante, time_mandante)</p><p>E (time_mandante, time_visitante)</p><p>(time_mandante, data)</p><p>(time_visitante, data)</p><p>Comentário: A questão quer saber quais conjuntos de colunas devem ter a restrição de chave</p><p>primária satisfeita para que o esquema atenda à Forma Normal de Boyce-Codd (FNBC). Vamos</p><p>dar uma olhada nas opções:</p><p>a) (time_mandante, time_visitante)</p><p>Incorreto. Embora essa combinação seja uma das necessárias para atender à FNBC, ela não é</p><p>a única. Essa combinação impede que o mesmo par de times atue mais de uma vez com o</p><p>mesmo papel (mandante ou visitante) em um jogo, independentemente da data.</p><p>b) (time_mandante, data) (time_visitante, data)</p><p>Incorreto. Essas combinações são necessárias para atender à FNBC, mas não são as únicas.</p><p>Elas impedem que um time mandante ou visitante jogue mais de uma vez na mesma data.</p><p>c) (time_mandante, data, gols_mandante) (time_visitante, data, gols_visitante)</p><p>Incorreto. Essas combinações são estranhas e não atendem à FNBC. Elas permitiriam que um</p><p>time jogasse mais de uma vez na mesma data, desde que o número de gols fosse diferente.</p><p>d) (time_mandante, time_visitante) (time_visitante, time_mandante)</p><p>Incorreto, pelas mesmas razões explicadas na alternativa A. Essas combinações não são</p><p>suficientes para atender à FNBC.</p><p>e) (time_mandante, time_visitante) (time_mandante, data) (time_visitante, data)</p><p>Correto. Essas combinações são as necessárias para atender à FNBC. Elas garantem que um</p><p>par de times não jogue mais de uma vez, independentemente da data, e que um time (seja</p><p>mandante ou visitante) não jogue mais de uma vez na mesma data.</p><p>Portanto, a alternativa correta é a letra E.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>171</p><p>321</p><p>Gabarito: E</p><p>12. FGV - 2022 - Agente de Tributos Estaduais (SEFAZ BA)/Administração e Finanças</p><p>Leia o fragmento a seguir.</p><p>“Uma tabela está na _______ se, e somente se, para cada ______ , onde X e A são atributos</p><p>simples ou compostos, uma das duas condições precisam ser mantidas: ou o atributo X é uma</p><p>_______, ou o atributo A é uma chave candidata. Se o atributo A é membro de uma chave</p><p>candidata”.</p><p>Assinale a opção cujos itens completam corretamente as lacunas do fragmento acima.</p><p>A forma normal boyce-codd – dependência multivalorada – chave primária.</p><p>B forma normal boyce-codd – dependência funcional não trivial X→→ A – chave primária.</p><p>C terceira forma normal – dependência funcional trivial X→→ A – chave candidata.</p><p>D terceira forma normal – dependência funcional não trivial X→ A – superchave.</p><p>E quarta forma normal – dependência funcional trivial X→→ A – chave candidata.</p><p>Comentário: A questão apresenta uma definição mais formal da terceira forma normal.</p><p>Vamos revisar o conjunto de definições das primeiras formas normais:</p><p>Uma tabela atende à primeira forma normal (1FN) quando cada uma de suas colunas contém</p><p>apenas valores atômicos, ou seja, um único valor para cada linha na tabela.</p><p>Para alcançar a segunda forma normal (2FN), a tabela deve estar na 1FN e seus atributos não</p><p>chaves devem ser totalmente dependentes da chave primária. Um atributo é considerado</p><p>totalmente dependente da chave primária quando é afetado por uma dependência funcional</p><p>(DF) na qual o lado esquerdo é a própria chave primária ou algo que pode ser derivado da</p><p>chave primária usando a transitividade das DFs.</p><p>A terceira forma normal (3FN) é alcançada quando, para cada dependência funcional não</p><p>trivial X->A, onde X e A são atributos simples ou compostos, duas condições devem ser</p><p>atendidas: ou o atributo X é uma superchave, ou o atributo A é membro de uma chave</p><p>candidata. Se A for membro de uma chave candidata, é chamado de atributo primo. Vale</p><p>ressaltar que uma dependência funcional trivial tem a forma YZ->Z.</p><p>Desta forma, podemos concluir que a resposta se encontra na alternativa D.</p><p>Gabarito: D</p><p>13. FGV - 2022 - Analista Legislativo (SEN)/Informática Legislativa/Análise de Suporte de</p><p>Sistemas</p><p>A tabela PUBSTREAM registra os usuários de uma plataforma de streaming de filmes</p><p>escolhendo seus filmes favoritos. As colunas UsrID e FilmeID compõe a chave primária da</p><p>tabela.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>172</p><p>321</p><p>Cada usuário possui um identificador único UsrID e um nome UsrNome.</p><p>Cada filme possui um identificador único FilmeID e um nome FilmeNome.</p><p>Cada gênero possui um identificador único GenID e um nome GenNome.</p><p>O dia em que o usuário "favorita" o filme é registrado na coluna DTFavorito.</p><p>A tabela apresentada está desnormalizada. Considerando as dependências funcionais, qual</p><p>das alternativas descreve a passagem à terceira forma normal (3FN)?</p><p>A A tabela está na 1FN. Ao decompor UsrID → UsrNome, FilmeID → FilmeNome, UsrID,</p><p>FilmeID→ DTFavorito e GenID→ GenNome chegamos na 2FN e automaticamente na 3FN.</p><p>B A tabela está na 1FN. Ao decompor UsrID → UsrNome, UsrID, FilmeID → DTFavorito e</p><p>GenID → GenNome chegamos na 2FN. Ao decompor FilmeID → FilmeNome chegamos na</p><p>3FN.</p><p>C A tabela está na 1FN. Ao decompor UsrID → UsrNome, FilmeID → FilmeNome e UsrID,</p><p>FilmeID → DTFavorito chegamos na 2FN. Ao decompor GenID → GenNome chegamos na</p><p>3FN.</p><p>D Ao decompor UsrID,FilmeID → DTFavorito chegamos na 1FN. Ao decompor UsrID →</p><p>UsrNome e GenID → GenNome chegamos na 2FN. Ao decompor FilmeID → FilmeNome</p><p>chegamos na 3FN.</p><p>E Ao decompor UsrID,FilmeID,GenID → DTFavorito chegamos na 1FN. Ao decompor UsrID→</p><p>UsrNome e GenID → GenNome chegamos na 2FN. Ao decompor FilmeID → FilmeNome</p><p>chegamos na 3FN.</p><p>Comentário: A questão aborda o processo de normalização de banco de dados,</p><p>especificamente focando na tabela PUBSTREAM, que armazena informações sobre usuários</p><p>de uma plataforma de streaming de filmes e seus filmes favoritos. A análise é feita com base</p><p>nas dependências funcionais presentes na tabela. Vamos analisar as alternativas:</p><p>Alternativa A) - Inicia a decomposição das dependências funcionais, mas erra ao incluir a</p><p>decomposição de GenID → GenNome, que não é necessário para atingir a 3FN, uma vez que</p><p>GenID não faz parte da chave primária. Portanto, essa alternativa está incorreta.</p><p>Alternativa B) - Começa a decomposição, mas também peca ao não decompor FilmeID →</p><p>FilmeNome, o que é essencial para eliminar dependências parciais. Assim, a alternativa está</p><p>incorreta.</p><p>Alternativa C) - Correta. Esta alternativa inicia a decomposição das dependências funcionais</p><p>de forma adequada. Ao decompor UsrID→ UsrNome, FilmeID→ FilmeNome e UsrID, FilmeID</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>173</p><p>321</p><p>→ DTFavorito, ela atinge a 2FN, pois elimina dependências parciais. Além disso, ao decompor</p><p>GenID → GenNome, ela atinge a 3FN, eliminando dependências transitivas. Portanto, a tabela</p><p>PUBSTREAM alcança a 3FN de acordo com essa alternativa.</p><p>Alternativa D) - Esta alternativa não elimina as dependências parciais em UsrID e GenID, e</p><p>também não aborda a dependência funcional DTFavorito. Portanto, está incorreta.</p><p>Alternativa E) - Semelhante à alternativa D, esta alternativa falha na eliminação de</p><p>dependências parciais e na abordagem da dependência funcional DTFavorito. Portanto, está</p><p>incorreta.</p><p>Portanto, a resposta correta é a alternativa C, que segue o processo de decomposição das</p><p>dependências funcionais de forma apropriada, atingindo a 3FN. Vale destacar que a</p><p>normalização de bancos de dados é fundamental para evitar redundância de dados e garantir</p><p>a integridade das informações.</p><p>Gabarito: C</p><p>4. FGV – Professor de Informática (SEAD-AP)/2022</p><p>No projeto de bancos de dados relacionais, a identificação das dependências funcionais é</p><p>fundamental no processo de</p><p>a) dimensionamento físico do banco de dados.</p><p>b) estabelecimento dos privilégios de acesso.</p><p>c) identificação das chaves estrangeiras.</p><p>d) normalização</p><p>das tabelas.</p><p>e) otimização das consultas.</p><p>Comentários: Vamos analisar cada uma das alternativas para identificar a resposta correta:</p><p>a) Dimensionamento físico do banco de dados: O dimensionamento físico do banco de dados</p><p>está relacionado à alocação de recursos, como espaço em disco, e configuração de</p><p>parâmetros para garantir o bom desempenho do sistema. As dependências funcionais não</p><p>têm um papel direto nesse processo.</p><p>b) Estabelecimento dos privilégios de acesso: O estabelecimento dos privilégios de acesso diz</p><p>respeito à definição de quais usuários ou grupos de usuários têm permissão para realizar</p><p>operações em tabelas ou outros objetos do banco de dados. As dependências funcionais não</p><p>estão diretamente relacionadas a esse processo.</p><p>c) Identificação das chaves estrangeiras: As chaves estrangeiras são utilizadas para estabelecer</p><p>relacionamentos entre tabelas em um banco de dados relacional, mas elas não estão</p><p>relacionadas diretamente à identificação das dependências funcionais.</p><p>d) Normalização das tabelas: A normalização das tabelas é um processo importante no</p><p>projeto de bancos de dados relacionais, que visa eliminar redundâncias e inconsistências,</p><p>resultando em um esquema mais organizado e livre de anomalias. Nesse contexto, a</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>174</p><p>321</p><p>identificação das dependências funcionais é fundamental para determinar as dependências</p><p>entre os atributos de uma tabela e, assim, auxiliar no processo de normalização.</p><p>e) Otimização das consultas: A otimização das consultas refere-se a melhorar o desempenho</p><p>das consultas realizadas no banco de dados, buscando reduzir o tempo de resposta e o</p><p>consumo de recursos. Embora as dependências funcionais possam influenciar indiretamente</p><p>a otimização de consultas ao influenciar a estrutura das tabelas, elas não são a base principal</p><p>desse processo.</p><p>Sendo assim, temos a nossa resposta correta na alternativa D.</p><p>Gabarito: Letra D</p><p>5. FGV – Analista Legislativo – Informática Legislativa -Análise de Sistemas (Senado</p><p>Federal)/2022</p><p>As tabelas PROFESSOR e ALUNO registram os identificadores únicos, nomes e datas de</p><p>nascimento de professores e alunos de uma universidade.</p><p>Assinale a opção que irá produzir uma lista contendo um único atributo com todos os nomes</p><p>de alunos e professores de forma a não repetir homônimos.</p><p>a) Uma junção natural entre as projeções Π𝐴𝑙𝑢𝑛𝐼𝐷(𝐴𝐿𝑈𝑁𝑂) ⋈ Π𝑃𝑟𝑜𝑓𝐼𝐷(𝑃𝑅𝑂𝐹𝐸𝑆𝑆𝑂𝑅).</p><p>b) Uma projeção Π𝑃𝑟𝑜𝑓𝑁𝑜𝑚𝑒(𝑃𝑅𝑂𝐹𝐸𝑆𝑆𝑂𝑅) seguida de uma projeção</p><p>Π𝐴𝑙𝑢𝑛𝑁𝑜𝑚𝑒(𝐴𝐿𝑈𝑁𝑂).</p><p>c) Um produto cartesiano entre as projeções Π𝐴𝑙𝑢𝑛𝑁𝑜𝑚𝑒(𝐴𝐿𝑈𝑁𝑂) ×</p><p>Π𝑃𝑟𝑜𝑓𝑁𝑜𝑚𝑒(𝑃𝑅𝑂𝐹𝐸𝑆𝑆𝑂𝑅).</p><p>d) Um conjunto união entre as projeções Π𝐴𝑙𝑢𝑛𝑁𝑜𝑚𝑒(𝐴𝐿𝑈𝑁𝑂) ∪</p><p>Π𝑃𝑟𝑜𝑓𝑁𝑜𝑚𝑒(𝑃𝑅𝑂𝐹𝐸𝑆𝑆𝑂𝑅).</p><p>e) Um conjunto intercessão entre as projeções Π𝐴𝑙𝑢𝑛𝑁𝑜𝑚𝑒(𝐴𝐿𝑈𝑁𝑂) ∩</p><p>Π𝑃𝑟𝑜𝑓𝑁𝑜𝑚𝑒(𝑃𝑅𝑂𝐹𝐸𝑆𝑆𝑂𝑅).</p><p>Comentários: Para obter uma lista contendo todos os nomes de alunos e professores de</p><p>forma a não repetir homônimos, é necessário realizar a união entre as projeções dos nomes</p><p>dos alunos e dos professores. Isso garante que os nomes sejam combinados em uma única</p><p>lista, sem duplicações.</p><p>Portanto, a operação que irá produzir essa lista é um conjunto união entre as projeções dos</p><p>nomes dos alunos (ΠAlunID(ALUNO)) e dos professores (ΠProfID(PROFESSOR)).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>175</p><p>321</p><p>Gabarito: Letra D</p><p>14. FGV - 2022 - Analista (MPE SC)/Dados e Pesquisas</p><p>Num banco de dados relacional, considere as tabelas T1 e T2, criadas como descrito a seguir.</p><p>T1 tem duas colunas, intituladas A e B, do tipo inteiro; a coluna A é declarada como primary</p><p>key, e não aceita valores nulos.</p><p>T2 tem duas colunas, intituladas C e A, do tipo inteiro; a coluna C é declarada como primary</p><p>key, e não aceita valores nulos; a coluna A foi declarada como UNIQUE, não aceita valores</p><p>nulos e ainda foi declarada como uma foreign key que referencia a coluna A da tabela T1.</p><p>À luz dessa estrutura, é correto afirmar que o relacionamento entre T1 e T2:</p><p>A é do tipo 1:1;</p><p>B é do tipo 1:N;</p><p>C é do tipo N:1;</p><p>D é do tipo M:N;</p><p>E não pode ser categorizado, pois isso depende das instâncias de cada tabela.</p><p>Comentário: Analisando a estrutura das tabelas T1 e T2, podemos concluir que o</p><p>relacionamento entre elas é do tipo 1:1 (um para um). Vamos entender por quê:</p><p>● A tabela T1 tem uma coluna A que é declarada como a chave primária (primary key) e não</p><p>aceita valores nulos. Isso significa que cada valor na coluna A de T1 é único, e não pode</p><p>haver duplicatas.</p><p>● A tabela T2 possui uma coluna C declarada como a chave primária (primary key), também</p><p>não aceitando valores nulos. Além disso, a coluna A em T2 é declarada como UNIQUE e é</p><p>uma chave estrangeira (foreign key) que referencia a coluna A da tabela T1.</p><p>A combinação dessas características indica que:</p><p>● Cada registro em T2 está associado a um valor único de A em T1 devido à declaração</p><p>UNIQUE em A em T2.</p><p>● Como A em T2 é uma chave estrangeira que referencia a chave primária de T1, cada valor</p><p>em A de T2 está ligado a um único valor em A de T1.</p><p>● Portanto, há um relacionamento de correspondência única entre as tabelas T1 e T2, onde</p><p>cada registro em T1 está relacionado a exatamente um registro em T2 e vice-versa.</p><p>Com base nessa análise, a resposta correta é a alternativa A, indicando que o relacionamento</p><p>entre T1 e T2 é do tipo 1:1 (um para um).</p><p>Gabarito: A</p><p>15. FGV - 2021 - Analista Judiciário (TJ RO)/Analista de Sistemas</p><p>Considere um projeto de banco de dados no qual há uma tabela T com colunas a, b, c, d.</p><p>Sabe-se que, para essa tabela, são verificadas as seguintes dependências funcionais:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>176</p><p>321</p><p>a→ b</p><p>a→ c</p><p>a→ d</p><p>b→ c</p><p>c→ a</p><p>Com relação às restrições de integridade decorrentes do processo de normalização da tabela</p><p>T, as constraints incluídas no comando create table devem ser equivalentes a:</p><p>A constraint c1 unique (a)</p><p>B constraint c1 unique (a, b)</p><p>C constraint c1 unique (a, b, c)</p><p>D constraint c1 unique (a, b, c, d)</p><p>E constraint c1 unique (a)</p><p>constraint c2 unique (b)</p><p>constraint c3 unique (c)</p><p>Comentário: O enunciado apresenta um conjunto de dependências funcionais em uma tabela</p><p>T, que são as seguintes:</p><p>a→ b</p><p>a→ c</p><p>a→ d</p><p>b→ c</p><p>c→ a</p><p>A partir dessas dependências funcionais, podemos identificar as chaves candidatas na tabela</p><p>T. A chave candidata é um conjunto de atributos que pode ser usado para determinar de</p><p>forma única os valores de todas as outras colunas na tabela. No caso apresentado, A é</p><p>claramente uma chave candidata, uma vez que determina todos os outros atributos (b, c e d).</p><p>Além disso, as relações de dependência funcional nos mostram que C e B também são chaves</p><p>candidatas, uma vez que C determina A e B determina C. Isso significa que cada um desses</p><p>atributos (A, B e C) pode ser usado como chave primária.</p><p>Quando uma tabela tem várias chaves candidatas, é prática comum escolher uma delas como</p><p>a chave primária (PK) e as outras como chaves únicas (unique keys). Isso é importante para</p><p>garantir a unicidade dos valores em cada uma das chaves candidatas, evitando duplicações de</p><p>informações.</p><p>Portanto, a resposta correta é a alternativa E, que representa corretamente as três chaves</p><p>candidatas (A, B e C) como únicas (unique), refletindo a necessidade de manter a unicidade</p><p>dos valores em cada uma dessas chaves candidatas. A alternativa C, que declara uma única</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>177</p><p>321</p><p>chave única (unique) abrangendo as três colunas, não é a escolha adequada, pois permitiria a</p><p>existência</p><p>de duplicações indesejadas.</p><p>Gabarito: E</p><p>16. FGV - 2021 - Analista de Tecnologia da Informação (FunSaúde CE)/TI e Infraestrutura de</p><p>Informática</p><p>Considere a definição e as instâncias das tabelas de bancos de dados CLUBE e JOGO exibidas a</p><p>seguir.</p><p>CLUBE</p><p>nome</p><p>Barcelona</p><p>Boca Juniors</p><p>The Strongest</p><p>JOGO</p><p>mandante visitante golsM golsV</p><p>Barcelona</p><p>Barcelona</p><p>Boca Juniors</p><p>Boca Juniors</p><p>The Strongest</p><p>The Strongest</p><p>Boca Juniors</p><p>The Strongest</p><p>Barcelona</p><p>The Strongest</p><p>Barcelona</p><p>Boca Juniors</p><p>1</p><p>NULL</p><p>0</p><p>3</p><p>2</p><p>2</p><p>0</p><p>NULL</p><p>0</p><p>0</p><p>0</p><p>0</p><p>Cada clube deve jogar quatro vezes, duas como mandante e duas como visitante.</p><p>As colunas golsM e golsV registram o número de gols dos times mandantes e visitantes,</p><p>respectivamente, em cada jogo. Ambas são nulas enquanto o jogo não for realizado.</p><p>Em relação às instâncias das tabelas CLUBE e JOGO, definidas anteriormente, considere as</p><p>constraints a seguir.</p><p>I. constraint pk1 primary key (mandante, visitante)</p><p>II. constraint fk1 foreign key (mandante) references clube</p><p>III. constraint fk2 foreign key (visitante) references clube</p><p>Dessas constraints, podem ser aplicadas à tabela JOGO:</p><p>A I, apenas.</p><p>B I e II, somente.</p><p>C I e III, somente.</p><p>D II e III, somente.</p><p>E I, II e III.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>178</p><p>321</p><p>Comentário: Nesse cenário, temos duas tabelas, CLUBE e JOGO, que estão relacionadas por</p><p>meio das colunas mandante e visitante na tabela JOGO, que representam os clubes que jogam</p><p>uma partida. Vamos analisar as constraints:</p><p>I. constraint pk1 primary key (mandante, visitante): Esta constraint define uma chave</p><p>primária composta na tabela JOGO usando as colunas mandante e visitante, o que garante</p><p>que cada combinação de mandante e visitante seja única na tabela JOGO. Isso é apropriado</p><p>para garantir que uma partida entre dois clubes seja registrada apenas uma vez na tabela</p><p>JOGO.</p><p>II. constraint fk1 foreign key (mandante) references clube: Essa constraint estabelece uma</p><p>chave estrangeira na coluna mandante da tabela JOGO, referenciando a tabela CLUBE. Isso</p><p>garante que os valores na coluna mandante na tabela JOGO correspondam aos valores válidos</p><p>na tabela CLUBE, ou seja, que os clubes que jogam as partidas existam na tabela CLUBE.</p><p>III. constraint fk2 foreign key (visitante) references clube: Semelhante à constraint anterior,</p><p>esta estabelece uma chave estrangeira na coluna visitante da tabela JOGO, referenciando a</p><p>tabela CLUBE. Isso garante que os valores na coluna visitante na tabela JOGO correspondam</p><p>aos valores válidos na tabela CLUBE.</p><p>Portanto, todas as três constraints são aplicáveis à tabela JOGO para garantir a integridade</p><p>referencial e a unicidade das combinações de mandante e visitante nas partidas. A resposta</p><p>correta é a alternativa E:</p><p>E) I, II e III.</p><p>Gabarito: E</p><p>17. FGV - 2021 - Analista de Tecnologia da Informação (FunSaúde CE)/TI e Infraestrutura de</p><p>Informática</p><p>Considere a definição e as instâncias das tabelas de bancos de dados CLUBE e JOGO exibidas a</p><p>seguir.</p><p>CLUBE</p><p>nome</p><p>Barcelona</p><p>Boca Juniors</p><p>The Strongest</p><p>JOGO</p><p>mandante visitante golsM golsV</p><p>Barcelona</p><p>Barcelona</p><p>Boca Juniors</p><p>Boca Juniors</p><p>The Strongest</p><p>The Strongest</p><p>Boca Juniors</p><p>The Strongest</p><p>Barcelona</p><p>The Strongest</p><p>Barcelona</p><p>Boca Juniors</p><p>1</p><p>NULL</p><p>0</p><p>3</p><p>2</p><p>2</p><p>0</p><p>NULL</p><p>0</p><p>0</p><p>0</p><p>0</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>179</p><p>321</p><p>Cada clube deve jogar quatro vezes, duas como mandante e duas como visitante.</p><p>As colunas golsM e golsV registram o número de gols dos times mandantes e visitantes,</p><p>respectivamente, em cada jogo. Ambas são nulas enquanto o jogo não for realizado.</p><p>Dependências funcionais têm um papel importante na teoria de bancos de dados. Tomando</p><p>por base a instância da tabela JOGO, definida anteriormente, assinale a dependência</p><p>funcional que pode ser corretamente depreendida.</p><p>A mandate→ golsM</p><p>B mandate, visitante→ golsM</p><p>C golsM→mandante</p><p>D golsM, golsV→mandante, visitante</p><p>E visitante→ gols, gols</p><p>Comentário: Com base na descrição do problema, podemos determinar a seguinte</p><p>dependência funcional: B) mandate, visitante→ golsM</p><p>Essa dependência funcional significa que o número de gols do time mandante (golsM)</p><p>depende da combinação de quem é o mandante (mandate) e quem é o visitante (visitante).</p><p>Em outras palavras, os gols do time mandante (golsM) são determinados pela partida</p><p>específica entre o time mandante e o time visitante.</p><p>As outras opções não refletem corretamente a relação entre as colunas. Portanto, a resposta</p><p>correta é a opção B.</p><p>Gabarito: B</p><p>18. FGV - 2021 - Analista de Tecnologia da Informação (BANESTES)/Desenvolvimento de</p><p>Sistemas (e mais 2 concursos)</p><p>Considere um banco de dados que contém uma tabela com os atributos CPF, Nome, RG e</p><p>Endereço, com milhões de registros. Sabe-se que cada pessoa tem seus próprios CPF e RG e</p><p>um único nome, embora possa haver homônimos.</p><p>Sendo assim, a dependência funcional que NÃO existe entre os atributos dessa tabela é:</p><p>A CPF→ Nome</p><p>B CPF→ RG</p><p>C Endereço→ CPF</p><p>D RG→ Endereço</p><p>E RG→ Nome</p><p>Comentário: vamos analisar as dependências funcionais:</p><p>A) CPF → Nome: Existe uma dependência funcional entre CPF e Nome, uma vez que cada</p><p>pessoa tem um único CPF associado a um único Nome.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>180</p><p>321</p><p>B) CPF → RG: Existe uma dependência funcional entre CPF e RG, pois cada pessoa tem um</p><p>único CPF associado a um único RG.</p><p>C) Endereço → CPF: Esta dependência funcional não é válida, pois o Endereço não determina</p><p>o CPF de uma pessoa. Diferentes pessoas que vivem no mesmo endereço podem ter CPFs</p><p>diferentes.</p><p>D) RG → Endereço: Esta dependência funcional não é válida, pois o RG não determina o</p><p>Endereço de uma pessoa. Pessoas com o mesmo RG podem ter endereços diferentes.</p><p>E) RG → Nome: Existe uma dependência funcional entre RG e Nome, uma vez que cada</p><p>pessoa tem um único RG associado a um único Nome.</p><p>Portanto, a dependência funcional que NÃO existe entre os atributos da tabela é a opção C:</p><p>C) Endereço→ CPF</p><p>Gabarito: C</p><p>19. FGV - 2021 - Analista Especializado (IMBEL)/Analista de Sistemas/"Prova Anulada" (e mais</p><p>1 concurso)</p><p>Na teoria de projetos de bancos de dados, o processo de normalização de uma tabela é feito a</p><p>partir da identificação</p><p>A das chaves estrangeiras.</p><p>B das dependências funcionais.</p><p>C das junções que serão necessárias.</p><p>D dos tipos de dados em cada coluna.</p><p>E dos relacionamentos entre as tabelas.</p><p>Comentário: Na teoria de projetos de bancos de dados, o processo de normalização de uma</p><p>tabela é feito a partir da identificação das dependências funcionais. Portanto, a alternativa</p><p>correta é a letra B. A normalização tem o objetivo de organizar os dados em tabelas de forma</p><p>que evite redundância e problemas de integridade, e isso é alcançado ao identificar as</p><p>dependências funcionais entre os atributos.</p><p>Gabarito: B</p><p>20. FGV - 2021 - Auditor Técnico de Controle Externo (TCE-AM)/Auditoria de Tecnologia da</p><p>Informação</p><p>Na questão, considere uma tabela de banco de dados T cuja instância é exibida a seguir.</p><p>A B C D</p><p>12 2 3 1</p><p>14 3 8 2</p><p>18 2 9 3</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>181</p><p>321</p><p>21 5 4 4</p><p>Supondo-se que a tabela T (descrita anteriormente) esteja normalizada até a forma normal</p><p>Boyce-Codd, a dependência funcional que NÃO se verifica nessa tabela é:</p><p>A A→ B</p><p>B B→ D</p><p>C C→ B</p><p>D C→ D</p><p>E A, D→ B</p><p>Comentário: B não pode ser considerada uma chave candidata, pois apresenta 2 tuplas (linha</p><p>1 e 3) com o mesmo valor. Dessa forma, não pode haver uma dependência funcional B→ D.</p><p>Gabarito: B</p><p>21. FGV - 2021 - Supervisor (IMBEL)/Tecnologia da Informação/"Provas Reaplicadas"</p><p>Na criação de esquemas de bancos de dados relacionais a partir</p><p>de modelos/diagramas de</p><p>entidades e relacionamentos, a implementação física de relacionamentos M:N é usualmente</p><p>feita por meio de</p><p>A chaves primárias.</p><p>B índices não únicos.</p><p>C restrições de validação.</p><p>D tabelas.</p><p>E triggers.</p><p>Comentário: No contexto de relacionamentos M:N, é necessário criar uma tabela de</p><p>associação para representar esse tipo de relacionamento, que envolve uma cardinalidade</p><p>"muitos para muitos". Essa tabela de associação deve ser formada por chaves estrangeiras,</p><p>que são, na verdade, as chaves primárias das entidades que participam do relacionamento</p><p>M:N.</p><p>Gabarito: D</p><p>22. FGV - 2018 - Auditor Fiscal de Tributos Estaduais (SEFIN RO)</p><p>Considere um banco de dados que registre informações sobre alunos, disciplinas e</p><p>professores em uma faculdade. Sabe-se que um aluno pode cursar uma ou mais disciplinas,</p><p>que cada disciplina é ministrada por um único professor e que cada disciplina aceita inscrições</p><p>de um ou mais alunos.</p><p>Nesse contexto, analise as afirmativas a seguir.</p><p>I. Alunos e professores têm relação N:M ente si.</p><p>II. Professores e disciplinas têm uma relação 1:N entre si.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>182</p><p>321</p><p>III. Cada professor ministra, necessariamente, apenas uma disciplina.</p><p>Está correto o que se afirma em</p><p>A I, apenas.</p><p>B II, apenas.</p><p>C III, apenas.</p><p>D I e II, apenas.</p><p>E I, II e III.</p><p>Comentário: Vamos analisar cada uma das afirmativas:</p><p>I. Alunos e professores têm relação N:M entre si. Isso significa que um aluno pode ter muitos</p><p>professores e um professor pode ter muitos alunos. A afirmativa I está correta.</p><p>II. Professores e disciplinas têm uma relação 1:N entre si. Isso significa que um professor pode</p><p>ministrar uma ou mais disciplinas, mas uma disciplina é ministrada por um único professor. A</p><p>afirmativa II está correta.</p><p>III. Cada professor ministra, necessariamente, apenas uma disciplina. Essa afirmativa é</p><p>contraditória à afirmativa II. Se a relação entre professores e disciplinas fosse 1:N, então cada</p><p>professor ministraria apenas uma disciplina. No entanto, a afirmativa II afirma que um</p><p>professor pode ministrar uma ou mais disciplinas. Portanto, a afirmativa III está incorreta.</p><p>Com base na análise acima, as afirmativas I e II estão corretas, e a afirmativa III está incorreta.</p><p>Portanto, a resposta correta é a alternativa D: D I e II, apenas.</p><p>Gabarito: D</p><p>23. FGV - 2018 - Analista do Ministério Público (MPE AL)/Administrador de Banco de Dados</p><p>No contexto da otimização de consultas para bancos de dados, a Álgebra Relacional tem um</p><p>papel importante, especialmente na construção das query trees para a representação de</p><p>planos de execução. As operações primitivas da AR são definidas como as operações que não</p><p>podem ser expressas por meio das demais operações.</p><p>Assinale a opção que apresenta a lista que contém as cinco operações primitivas da AR.</p><p>A Diferença, divisão, projeção, seleção e união.</p><p>B Diferença, produto, projeção, seleção e união.</p><p>C Interseção, produto, projeção, seleção e união.</p><p>D Divisão, interseção, junção, seleção e união.</p><p>E Junção, produto, projeção, seleção e união.</p><p>Comentário: As operações primitivas da álgebra relacional são: seleção, projeção, produto</p><p>cartesiano, união e diferença. Elas são consideradas primitivas porque são as operações mais</p><p>básicas, de forma que as outras operações podem ser expressas em termos desses</p><p>operadores primitivos. Logo, a nossa resposta encontra-se na alternativa B.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>183</p><p>321</p><p>Gabarito: B</p><p>24. FGV - 2018 - Analista Legislativo (ALERO)/Tecnologia da Informação/Banco de Dados</p><p>No processo de otimização e processamento de consultas em bancos de dados relacionais, a</p><p>construção da query tree (ou árvore de consulta) é feita com base nas operações da Álgebra</p><p>Relacional.</p><p>Assinale a opção que indica as operações primitivas dessa álgebra, ou seja, as operações que</p><p>não podem ser expressas por combinações das demais operações.</p><p>A Diferença, Divisão, Projeção, Produto, Seleção.</p><p>B Diferença, Projeção, Produto, Seleção, União.</p><p>C Divisão, Interseção, Junção, Produto, Seleção, União.</p><p>D Junção, Projeção, Produto, Seleção, União.</p><p>E Junção, Produto, Projeção, Seleção, União.</p><p>Comentário: As operações primitivas da álgebra relacional são: seleção, projeção, produto</p><p>cartesiano, união e diferença. Elas são consideradas primitivas porque são as operações mais</p><p>básicas, de forma que as outras operações podem ser expressas em termos desses</p><p>operadores primitivos. Logo, a nossa resposta encontra-se na alternativa B.</p><p>Gabarito: B</p><p>6. Ano: 2010 Banca: FGV Órgão: DETRAN-RN Cargo: Administrador de banco de dados</p><p>Sobre Bancos de Dados Relacionais, analise:</p><p>I.A abordagem relacional está baseada no princípio de que as informações em uma base de</p><p>dados podem ser consideradas relações matemáticas e que estão representadas de maneira</p><p>uniforme com o uso de tabelas bidimensionais.</p><p>II.A teoria relacional enxerga o banco de dados como um conjunto de tabelas, e as operações</p><p>que as utilizam são feitas por linguagem que o manipula, não sendo procedurais, ou seja,</p><p>manipulando conjuntos de uma só vez.</p><p>III.É indispensável aos usuários saber como e onde os dados estão armazenados.</p><p>ESTÁ(ÃO) CORRETA(S) APENAS A(S) AFIRMATIVA(S):</p><p>A) I, II</p><p>B) I, III</p><p>C) I</p><p>D) II</p><p>E) II, III</p><p>Comentário: Finalmente uma questão na qual tratamos dos aspectos do modelo relacional.</p><p>Vejam que a alternativa I apresenta aspectos matemáticos e bidimensionais das relações</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>184</p><p>321</p><p>presentes no modelo. Na alternativa II mostra-se que essas relações são vistas como tabelas e</p><p>usam uma linguagem para manipulação dos dados, geralmente SQL. Ambas as alternativas</p><p>estão corretas.</p><p>A alternativa III apresenta um equívoco conceitual, os usuários não têm conhecimento da</p><p>estrutura física do banco de dados, isso está encapsulado na implementação do SGBD.</p><p>Logo, a resposta está na letra A, itens I e II estão corretas.</p><p>Gabarito: A.</p><p>7. Ano: 2015 Banca: FGV Órgão: TJ-BA Cargo: Analista Judiciário - Tecnologia da Informação</p><p>As técnicas de projeto de bancos de dados visam à obtenção de três objetivos principais,</p><p>quais sejam:</p><p>A) normalização, preservação das dependências funcionais e decomposição sem perda;</p><p>B) normalização, independência de dados e decomposição sem perda;</p><p>C) normalização, independência de dados e controle de concorrência;</p><p>D) atomicidade, consistência e durabilidade;</p><p>E) independência de dados, controle de concorrência e normalização.</p><p>Comentário: Essa questão trata de um ponto interessante: o projeto de banco de dados.</p><p>Quando falamos em técnicas para projeto e analisamos as alternativas a primeira palavra que</p><p>vamos pensar é a normalização. A normalização de dados pode ser vista como o processo de</p><p>análise de determinados esquemas de relações com base nas suas dependências funcionais e</p><p>chaves primárias para alcançar duas propriedades: (1) minimização de redundância e (2)</p><p>minimização das anomalias de inserção, exclusão e atualização.</p><p>Além das propriedades acima, temos outras duas propriedades que devem ser garantidas</p><p>para o esquema como um todo: (1) as propriedades de junção sem perda ou junção não</p><p>aditiva, que garante que o problema de geração de tuplas ilegítimas não ocorra nos esquemas</p><p>de relação criados após a decomposição; (2) a propriedade da preservação da dependência,</p><p>que assegura que cada dependência funcional será representada em alguma relação</p><p>individual resultante da decomposição.</p><p>Analisando esse texto podemos concluir que a resposta está na alternativa A. Percebam que</p><p>algumas opções não fazem sentido serem consideradas durante o projeto como o controle de</p><p>concorrência.</p><p>Gabarito: A.</p><p>8. Ano: 2015 Banca: FGV</p><p>Órgão: TJ-RO Cargo: Analista de Sistemas</p><p>Na construção de bancos de dados relacionais, o conceito de integridade referencial é</p><p>usualmente implementado por meio de restrições conhecidas como:</p><p>A) cláusulas check;</p><p>B) collation strings;</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>185</p><p>321</p><p>C) triggers;</p><p>D) stored procedures;</p><p>E) chaves estrangeiras.</p><p>Comentário: Finalmente uma questão que não é de formas normais e dependências</p><p>funcionais! Uma questão simples que faz com que você se relembre que o conceito de</p><p>integridade referencial está associado as chaves estrangerias.</p><p>A restrição de integridade referencial é classificada entre duas relações e é usada para manter</p><p>a consistência entre as tuplas nas duas relações. Podemos pensar que a restrição de</p><p>integridade declara que uma tupla de uma relação, que faz referência a outra, deve se referir</p><p>a uma tupla existente nessa relação.</p><p>Gabarito: E.</p><p>9. FGV - Analista Censitário (IBGE)/Análise de Sistemas/Suporte à Produção/2017</p><p>Em relação a banco de dados relacionais, analise as afirmativas abaixo:</p><p>I. Uma chave primária identifica um registro de forma única, não podendo eventualmente</p><p>assumir valor nulo.</p><p>II. Uma chave estrangeira não pode apontar para uma chave primária da mesma tabela.</p><p>III. Uma chave candidata é aquela que define uma combinação de atributos entre tabelas,</p><p>mas não pode ser uma chave primária.</p><p>Está correto o que se afirma em:</p><p>A I;</p><p>B II;</p><p>C III;</p><p>D I e II;</p><p>E I, II e III.</p><p>Comentário: Vamos analisar cada uma das afirmativas acima:</p><p>I. CORRETA. A chave primária é responsável por identificar unicamente um registro na tabela.</p><p>Desta forma, ela não pode receber o valor nulo nem duplicados.</p><p>II. ERRADA. Nos autorrelacionamentos ou relacionamento recursivo, uma entidade se</p><p>relaciona com ela mesma, a chave estrangeira irá “apontar” para um valor chave primária de</p><p>uma instância da própria tabela.</p><p>III. ERRADA. Uma chave candidata todo conjutno de atributos mínimos capaz de identificar</p><p>unicamente um registro na tabela. Dentre as chaves candidatas, apenas uma será escolhida</p><p>para ser a chave primária.</p><p>Assim, temos nossa resposta na alternativa A.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>186</p><p>321</p><p>Gabarito: A</p><p>10.FGV - Analista em Tecnologia da Informação e Comunicação (SEPOG RO)/2017</p><p>A figura a seguir mostra a estrutura das tabelas Produto, Venda e Cliente pertencentes a um</p><p>banco de dados de uma empresa comercial.</p><p>A tabela Venda contém um registro para cada venda efetuada pela companhia. A fim de</p><p>preservar a integridade referencial do banco de dados, assinale a opção que indica a coluna</p><p>ou colunas dessa tabela que deveria(m) ser chaves estrangeiras.</p><p>A id_produto.</p><p>B imposto e quantidade.</p><p>C quantidade.</p><p>D id_produto e quantidade.</p><p>E id_cliente e id_produto.</p><p>Comentário: uma chave estrangeira é um atributo de uma tabela que aponta para a chave</p><p>primária ou candidata da própria ou de outra tabela, estabelecendo uma relação entre elas.</p><p>No caso da tabela Venda, a coluna id_cliente é uma chave estrangeira pois referencia a</p><p>coluna id_cliente da tabela Cliente, indicando qual cliente fez a compra; já a</p><p>coluna id_produto também é uma chave estrangeira que referencia a coluna id_produto da</p><p>tabela Produto, indicando qual produto foi comprado.</p><p>Os demais atributos (data, quantidade e imposto) não referenciam as</p><p>tabelas Produto e Cliente. Eles são propriedades, ou seja, características intrínsecas de uma</p><p>venda. Afinal, cada venda de um produto feita a um cliente terá uma data da compra, uma</p><p>quantidade comprada e um valor de imposto pago. Concluímos, assim, que a nossa resposta</p><p>está na alternativa E.</p><p>Gabarito: E.</p><p>11. FGV - Fiscal de Tributos (Niterói)/2015</p><p>Nas cinco questões seguintes há referências a um banco de dados denominado banco BD,</p><p>cujo esquema relacional e respectivo preenchimento são ilustrados a seguir.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>187</p><p>321</p><p>São definidas para essas tabelas chaves primárias e/ou candidatas, de acordo com o quadro a</p><p>seguir.</p><p>Chaves estrangeiras (ou foreign keys) constituem um importante conceito na construção de</p><p>bancos de dados relacionais. No banco BD, o número de chaves estrangeiras que deveriam ser</p><p>especificadas é:</p><p>A 1;</p><p>B 2;</p><p>C 3;</p><p>D 4;</p><p>E 5.</p><p>Comentário: Vamos analisar cada uma das tabelas acima, começando pela</p><p>tabela Cliente possui três atributos:</p><p>● codigoC: armazena o código do cliente;</p><p>● nomeC: armazena o nome do cliente; e</p><p>● endereço: armazena o endereço do cliente.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>188</p><p>321</p><p>Já a tabela Produto possui quatro atributos:</p><p>● codigoP: armazena o código do produto;</p><p>● nomeP: armazena o nome do produto;</p><p>● preço: armazena o preço do produto; e</p><p>● estoque: armazena a quantidade do produto em estoque.</p><p>Por fim, temos a tabela Venda, que possui cinco atributos:</p><p>● pedido: armazena o código do pedido;</p><p>● item: armazena a que item do pedido a linha da tabela se refere;</p><p>● codigoC: referencia o código do cliente que fez o pedido;</p><p>● codigoP: referencia o código do produto vendido; e</p><p>● quantidade: armazena a quantidade do produto que foi vendida.</p><p>Perceba que, na tabela Venda, temos dois atributos que fazem referência a outras tabelas:</p><p>os atributos codigoC e codigoP. Sendo assim, temos duas chaves estrangeiras na</p><p>tabela Venda.</p><p>Gabarito: B</p><p>12. FGV - Fiscal de Tributos (Niterói)/2015</p><p>Para resolver essa questão: Use as tabelas da questão anterior!</p><p>Sobre o banco BD, considere o seguinte conjunto de afirmativas sobre eventuais restrições no</p><p>preenchimento das tabelas.</p><p>I. Não é permitido dois ou mais produtos com o mesmo nome.</p><p>II. Cada cliente tem apenas um código de cliente associado ao seu nome.</p><p>III. É possível que o produto “Cadeira”, por exemplo, seja cadastrado mais de uma vez com</p><p>códigos e preços diferentes.</p><p>IV. Não é permitido que, num mesmo pedido, possa constar a venda de dois ou mais itens do</p><p>mesmo produto.</p><p>De acordo com as informações disponíveis, é verdadeiro somente o que se afirma em:</p><p>A I;</p><p>B I e II;</p><p>C I, II e III;</p><p>D II, III e IV;</p><p>E III e IV.</p><p>Comentário: Vamos analisar cada uma das afirmativas:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>189</p><p>321</p><p>I. CORRETA. O atributo nomeP é chave candidata da tabela Produto. Por isso, não pode se</p><p>repetir na tabela.</p><p>II. CORRETA. O atributo codigoC é chave primária da tabela Cliente. Por isso, não pode se</p><p>repetir na tabela.</p><p>III. ERRADA. O atributo nomeP, que representa o nome do produto, é chave candidata. Sendo</p><p>assim, não é possível registrar um produto chamado "Cadeira" duas vezes, independente dos</p><p>outros atributos serem distintos.</p><p>IV. ERRADA. A tabela Venda tem como chave unicamente os atributos {pedido, item}. Dessa</p><p>forma, não há impedimento algum que o atributo codigoP se repita na tabela, ou seja, pode</p><p>existir a venda de dois ou mais itens do mesmo produto.</p><p>Logo, temos nossa resposta na alternativa B.</p><p>Gabarito: B</p><p>13. FGV - Auditor do Estado (CGE MA)/2014</p><p>As restrições de integridade são um dos principais objetivos de um sistema de gerência de</p><p>banco de dados.</p><p>Nesse contexto, analise as afirmativas a seguir e assinale V para a verdadeira e F para a falsa.</p><p>( ) Integridade Referencial – funciona ao nível da tabela, sendo que o valor dos campos que</p><p>constituem a chave estrangeira de uma tabela deve estar também presente na chave primária</p><p>da tabela que referenciam ou, quando muito, podem ter o valor NULL.</p><p>( ) Integridade de Domínio – funciona ao nível da linha da tabela do banco de dados,</p><p>sendo</p><p>que o valor de um campo deve obedecer ao tipo de dados e às restrições de valores</p><p>admitidos para essa coluna.</p><p>( ) Integridade de Entidade – funciona ao nível da coluna da tabela do banco de dados, sendo</p><p>que cada tabela deve possuir na sua definição uma chave secundária.</p><p>As afirmativas são, respectivamente,</p><p>A F, V e F.</p><p>B F, V e V.</p><p>C V, F e F.</p><p>D V, V e F.</p><p>E F, F e V.</p><p>Comentário: Vamos analisar cada uma das afirmativas:</p><p>I. CERTA. A função da integridade referencial é garantir que valores das colunas permaneçam</p><p>consistentes em todas as tabelas de acordo com o relacionamento pretendido, impedindo</p><p>referências a valores não existentes. O valor NULL é aceito para chave estrangeiras (mas não</p><p>para chaves primárias).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>190</p><p>321</p><p>II. ERRADA. A integridade de domínio funciona ao nível da coluna.</p><p>III. ERRADA. A Integridade de Entidade afirma que duas linhas de uma tabela não podem</p><p>conter o mesmo valor de chave primária. Além disso, nenhuma linha pode conter um valor</p><p>nulo para qualquer coluna componente de uma chave primária.</p><p>Logo, temos a resposta na alternativa C.</p><p>Gabarito: C</p><p>14. FGV - Analista de Processos Administrativos (CONDER)/Administrativa/Tecnologia da</p><p>Informação/2013</p><p>Leia o fragmento a seguir.</p><p>“Uma _____ de um esquema de relação R = {A1, A2,..., An} é um conjunto de atributos M ⊆ N</p><p>que contém a propriedade na qual não haverá duas tuplas t1 e t2 em qualquer estado válido</p><p>da relação n de N, cuja t1[M] = t2[M]. Uma chave C possui a propriedade adicional de que a</p><p>remoção de qualquer atributo de C fará com que C não seja mais uma _____.”</p><p>Assinale a alternativa que completa corretamente as lacunas do</p><p>fragmento acima.</p><p>A chave primária – chave primária</p><p>B chave candidata – chave candidata</p><p>C chave estrangeira – chave estrangeira</p><p>D chave secundária – chave secundária.</p><p>E superchave – superchave</p><p>Comentário: Superchave garante unicidade! Uma chave, por ser uma superchave mínima, se</p><p>perder um dos seus atributos deixa de ser superchave pois perde a característica de</p><p>unicidade.</p><p>Gabarito: E</p><p>15.FGV - Analista (MPE MS)/Informática/Banco de Dados/2013 (adptada)</p><p>Com relação ao tema “modelo relacional”, analise as afirmativas a seguir.</p><p>I. Chave estrangeira é o mecanismo que permite a implementação de relacionamentos em um</p><p>banco de dados relacional.</p><p>II. Chave estrangeira é uma coluna única ou combinação de colunas cujos valores aparecem</p><p>na chave de outra tabela.</p><p>III. Chave candidata é uma coluna cujos valores necessariamente aparecem como chave</p><p>secundária em tabelas que participam de auto-relacionamentos.</p><p>Assinale:</p><p>A se somente a afirmativa I estiver correta.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>191</p><p>321</p><p>B se somente a afirmativa II estiver correta.</p><p>C se somente a afirmativa III estiver correta.</p><p>D se somente as afirmativas I e II estiverem corretas.</p><p>E se somente as afirmativas I e III estiverem corretas.</p><p>Comentário: Vamos analisar cada uma das afirmativas:</p><p>I. CORRETA. Uma chave estrangeira é um atributo que referencia uma tupla de outra relação.</p><p>É a forma de implementar relacionamentos no modelo relacional.</p><p>II. CORRETA. A chave estrangeira deve necessariamente conter um valor que existe como</p><p>chave candidata da tabela que ela referencia.</p><p>III. ERRADA. A chave secundária é a chave candidata que não foi escolhida pelo projetista</p><p>para ser chave primária.</p><p>Gabarito: D.</p><p>16. FGV - Analista de Sistemas (AL MT)/Banco de Dados/2013</p><p>Com relação às definições dos diferentes tipos de chaves em um projeto de Banco de Dados,</p><p>analise as afirmativas a seguir.</p><p>I. Em alguns casos, mais de uma coluna ou combinações de colunas podem servir para</p><p>distinguir uma linha das demais. Se uma das colunas (ou combinação de colunas) é escolhida</p><p>como chave primária, as demais são denominadas chaves estrangeiras.</p><p>II. Uma chave estrangeira é uma coluna ou uma combinação de colunas cujos valores</p><p>aparecem necessariamente na chave primária de uma tabela. A chave estrangeira é o</p><p>mecanismo que permite a implementação de relacionamentos em um banco de dados</p><p>relacional.</p><p>III. Uma chave primária é uma coluna ou uma combinação de colunas cujos valores não</p><p>distinguem uma linha das demais dentro de uma tabela.</p><p>Assinale:</p><p>A se somente a afirmativa I estiver correta.</p><p>B se somente a afirmativa II estiver correta.</p><p>C se somente a afirmativa III estiver correta.</p><p>D se somente as afirmativas I e II estiverem corretas.</p><p>E se todas as afirmativas estiverem corretas.</p><p>Comentário: Vamos comentar as afirmativas nas linhas abaixo:</p><p>I. ERRADA. A primeira parte da afirmativa está correta: uma chave primária é uma coluna (ou</p><p>conjunto de colunas) cujo valor distingue uma linha das demais porque ele não se repete na</p><p>tabela, sendo único para cada ocorrência. No entanto, as demais colunas não são</p><p>automaticamente denominadas chaves estrangeiras. Uma tabela, inclusive, pode não ter</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>192</p><p>321</p><p>nenhuma chave estrangeira. Lembre-se: uma chave estrangeira é um atributo (ou conjunto de</p><p>atributos) que aponta para a chave primária de outra tabela, estabelecendo uma relação</p><p>entre as duas.</p><p>II. CORRETA. Uma chave estrangeira é um atributo (ou conjunto de atributos) que aponta para</p><p>a chave primária de outra tabela, estabelecendo uma relação entre as duas. É a forma que se</p><p>implementa os relacionamentos entre as entidades no modelo relacional.</p><p>III. ERRADA. Uma chave primária é uma coluna (ou combinação de colunas) cujo</p><p>valor distingue uma linha das demais porque ele não se repete na tabela, sendo único para</p><p>cada ocorrência.</p><p>Logo, temos a resposta na alternativa B.</p><p>Gabarito: B</p><p>17.FGV - Analista de Sistemas (AL MT)/Banco de Dados/2013</p><p>Com relação às restrições de integridade em um projeto de Banco de Dados, analise as</p><p>afirmativas a seguir.</p><p>I. A restrição de integridade referencial é especificada em uma relação R, e afirma que uma</p><p>tupla t1 de R só pode referenciar outra tupla t2 de uma relação S se existir uma mesma chave</p><p>candidata nas relações S e R.</p><p>II. As restrições de integridade semântica estabelecem o relacionamento funcional entre dois</p><p>conjuntos de atributos K e L de uma mesma relação R.</p><p>III. A restrição de integridade de entidade afirma que nenhum valor de chave primária pode</p><p>ser null, pois a chave primária é utilizada para identificar univocamente qualquer tupla t de</p><p>uma relação R.</p><p>Assinale:</p><p>A se somente a afirmativa I estiver correta.</p><p>B se somente a afirmativa II estiver correta.</p><p>C se somente a afirmativa III estiver correta.</p><p>D se somente as afirmativas I e II estiverem corretas.</p><p>E se todas as afirmativas estiverem corretas.</p><p>Comentário: Vamos comentar cada uma das afirmativas a seguir:</p><p>I. Errada! A restrição de integridade referencial é especificada em uma relação R, e afirma que</p><p>uma tupla t1 de R só pode referenciar outra tupla t2 de uma relação S se existir uma chave</p><p>candidata nas relações S, referenciada pela chave estrangeira em R..</p><p>II. Errada! As restrições de integridade semântica estabelecem uma restrição sobre os valores</p><p>de uma ou mais relações de acordo com as regras de negócio da organização.</p><p>III. Certa.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>193</p><p>321</p><p>Gabarito:C.</p><p>18. Ano: 2016 Banca: FGV Órgão: IBGE Cargo: Analista - Análise e Desenvolvimento de Aplicações</p><p>Existem muitas regras de transformação de expressões da álgebra relacional em operações</p><p>equivalentes. Assinale a alternativa que apresenta transformações de natureza comutativa.</p><p>A)</p><p>B)</p><p>C)</p><p>D)</p><p>E)</p><p>Comentário: Há muitas regras de transformação de expressões da álgebra relacional em</p><p>operações equivalentes. Elas são especialmente usadas pelo otimizador de consulta dos</p><p>bancos de dados para melhorar o desempenho. Vejamos algumas regras mais conhecidas:</p><p>Cascata de σ: Uma condição de seleção conjuntiva pode ser quebrada em uma cascata de</p><p>operações de σ individuais:</p><p>(σ (R) ≡ σ (σ (... (σ (R) …)))</p><p>Comutatividade de σ: A operação de σ é comutativa. Vejam que este é o caso da alternativa</p><p>A, que é a nossa resposta.</p><p>σ (σ (R) ≡ σ (σ (R)</p><p>Cascata em π: Em uma sequência de operações π, todas exceto a última, podem ser</p><p>ignoradas.</p><p>π( π(... (π(R) ≡ π(R)</p><p>Comutatividade de σ e π: Se a condição de seleção c envolver apenas aqueles atributos A1, ...,</p><p>An da lista de projeção, as duas operações podem ser comutadas.</p><p>π (σ (R)) ≡ σ (π (R))</p><p>Comutatividade de x e ⋈: As operações de junção produto cartesiano são comutativas.</p><p>Observe que ‘c’ é a condição de junção.</p><p>R x S ≡ S x R</p><p>R⋈c S ≡ S⋈c R</p><p>Comutatividade de σ e ⋈: Se todos os atributos da condição de seleção c envolverem apenas</p><p>os atributos de uma das relações participantes da junção, R, por exemplo, as duas operações</p><p>podem ser comutadas como se segue:</p><p>σ (R⋈ S) ≡ (σ (R)) ⋈ S</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>194</p><p>321</p><p>Da mesma maneira, se a condição de seleção c, puder ser escrita como (c1 AND c2), na qual a</p><p>condição c1 envolver apenas os atributos de R e a condição c2 envolver apenas atributos de S,</p><p>as operações comutam da seguinte forma:</p><p>σ (R⋈ S) ≡ (σ (R)) ⋈ (σ (S))</p><p>As mesmas regras se aplicam se a operação de junção for trocada por produto cartesiano.</p><p>Comutatividade de π e ⋈: Suponha que a lista de projeção seja L = {A1, ..., An, B1, ... , Bm}, onde</p><p>os A’s são atributos de R e os B´s atributos de S. Se a condição de junção c envolver apenas</p><p>atributos que estão em L, as duas operações podem ser comutadas como se segue:</p><p>π (R⋈ S) ≡ π (R) ⋈ π (S)</p><p>Os livros do Navathe apresentam uma lista mais completa dessas operações, mas vamos nos</p><p>limitar a essas, pelo menos por enquanto.</p><p>Gabarito: A.</p><p>19. Ano: 2014 Banca: FGV Órgão: SUSAM Cargo: Analista de Sistemas</p><p>Um usuário, ao preencher um formulário gerenciado por um banco de dados, erroneamente</p><p>digita seu sobrenome no local onde deveria ser lançada a sua data de nascimento. Após</p><p>confirmar o lançamento das informações preenchidas no formulário, o sistema de banco de</p><p>dados lhe informa que lançado um registro errado no campo data, cancelando a ação.</p><p>A tarefa desempenhada pelo banco de dados que preveniu a ocorrência deste erro é:</p><p>A) a interação com o gerenciador de arquivos.</p><p>B) a garantia de integridade.</p><p>C) a garantia de segurança.</p><p>D) a recuperação e backup.</p><p>E) o controle de concorrência.</p><p>Comentário: Percebam nesta questão a importância da definição dos tipos de dados. Esses</p><p>tipos de dados e as demais regras de restrições de integridade criam mais uma camada de</p><p>verificação de consistência do seu sistema no banco de dados. Apenas lembrando, que a</p><p>validação destas regras pode ser feita na camada de aplicação do sistema. O que importa para</p><p>a questão é entender que o SGBD preveniu a ocorrência de um erro por parte do usuário</p><p>usando uma regra que visa a garantia da integridade.</p><p>Gabarito: B.</p><p>20. FGV - Técnico do Ministério Público (MPE AL)/Geral/2018</p><p>Em um banco de dados relacional, um nome da tabela, uma chave primária e um nome de</p><p>coluna garantem o acesso a</p><p>A um dado.</p><p>B um SGBD.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>195</p><p>321</p><p>C uma linguagem de consulta.</p><p>D uma partição.</p><p>E uma visão.</p><p>Comentário: Segundo a regra do acesso garantido de Codd, cada valor atômico (datum), em</p><p>um banco de dados relacional, possui a garantia de ser logicamente acessado pela</p><p>combinação do nome de tabela, do valor da chave primária e do nome da coluna. Logo, o</p><p>valor acesso é um dado e a resposta encontra-se na alternativa A.</p><p>Gabarito: A.</p><p>21.FGV - Analista de Controle Interno (Pref Recife)/Tecnologia da Informação/2014</p><p>O projeto de bancos de dados relacionais baseia-se fortemente na análise das correlações</p><p>existentes entre os diversos atributos (ou colunas) que compõem uma determinada tabela.</p><p>Essas correlações regem as regras de normalização e são conhecidas como</p><p>A restrições de integridade.</p><p>B cláusulas check.</p><p>C chaves estrangeiras.</p><p>D dependências funcionais.</p><p>E formas normais.</p><p>Comentário: A dependência funcional (DF) é uma restrição de duas ou mais colunas de uma</p><p>tabela. X determina Y (X→Y) se existe no máximo um valor de Y para cada valor de X.</p><p>Gabarito: D.</p><p>22. FGV - Analista do Ministério Público (MPE AL)/Desenvolvimento de Sistemas/2018</p><p>Considere uma tabela de banco de dados contendo informações de contato dos clientes de</p><p>uma empresa. Sabe-se que cada cliente pode ter um número variado de contatos, da mesma</p><p>natureza ou não. A seguir, um extrato da instância dessa tabela contendo os dados completos</p><p>de cinco clientes.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>196</p><p>321</p><p>Sobre as dependências funcionais e multivaloradas para essa tabela, assinale a afirmativa</p><p>correta.</p><p>A CódigoCliente→ Natureza, Contato</p><p>B CódigoCliente, Natureza→ Contato</p><p>C CódigoCliente→→ Natureza</p><p>D Conta, Natureza→ CódigoCliente</p><p>E Além das dependências triviais, nenhuma outra dependência pode ser deduzida.</p><p>Comentário: Vamos lembrar da definição de dependência funcional: quando X ฀ Y, para</p><p>cada valor distinto de X existe apenas 1 valor de Y. De posse desse conceito podemos</p><p>verificar se essa regra se verifica em alguma das alternativas. Veja que, temos valores iguais</p><p>para a coluna que representa o X, se isso acontece o valor de Y deve ser o mesmo. Vejamos</p><p>o código cliente 123 ele está associado a dois valores distintos de natureza, logo, a letra A</p><p>não pode ser uma dependência funcional. O mesmo acontece com as demais alternativa.</p><p>A peculiaridade desta questão é a letra C, onde temos 2 setas. Isso significa que X</p><p>multidetermina Y. Isso é chamado de dependência multifuncional! Mas neste caso a relação</p><p>tem que apresentar todas as combinações de Y e Z. Como assim? Se 123 está relacionado as</p><p>naturezas e-mail e celular e aos contatos jo@xxx.br e 987654321. Então para que a</p><p>dependência multifuncional exista teríamos que ter as seguintes linhas na relação:</p><p>CódigoCliente Natureza Contato</p><p>123 e-mail jo@xxx.br</p><p>123 e-mail 987654321</p><p>123 celular jo@xxx.br</p><p>123 celular 987654321</p><p>E por que você não aprendeu isso na aula? Porque essa lógica é ensinada na quarta forma</p><p>normal, que está fora do escopo da SEFAZ-AM. Assim, temos nossa resposta na alternativa</p><p>E.</p><p>Gabarito: E</p><p>25. FGV - Analista do Ministério Público (MPE AL)/Desenvolvimento de Sistemas/2018</p><p>Teoricamente, um banco de dados relacional poderia ser construído em uma única tabela,</p><p>chamada universal, na qual estariam presentes todos os atributos. Na prática, porém, isso</p><p>causaria enormes transtornos.</p><p>Uma técnica de projeto de bancos é a de decomposição sucessiva das tabelas, à luz das</p><p>dependências entre atributos, até que se chegue a um projeto normalizado com um nível de</p><p>decomposição aceitável. Nesse processo, deve haver uma preocupação especial para que essa</p><p>decomposição seja sem perda.</p><p>Assinale a opção que apresenta o significado técnico da “decomposição sem perda”, no</p><p>presente contexto.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>197</p><p>321</p><p>A Cada atributo deve aparecer em uma ou mais tabelas, após a decomposição.</p><p>B Cada atributo deve aparecer em apenas uma das tabelas obtidas pela decomposição.</p><p>C Todos</p><p>os estados representáveis na tabela universal deveriam ser alcançáveis por meio da</p><p>combinação das tabelas obtidas pela decomposição.</p><p>D Todos os valores dos atributos que compõem a tabela universal podem estar presentes em</p><p>um ou mais dos atributos que compõem as tabelas obtidas pela decomposição.</p><p>E O número de atributos da tabela universal deve ser igual ao somatório do número de</p><p>atributos em cada um das tabelas obtidas pela decomposição.</p><p>Comentário: Dizemos que uma decomposição é sem perdas se for possível reconstruir a</p><p>tabela original efetuando a junção das tabelas decompostas. As formas normais baseadas no</p><p>conceito de dependência funcional garantem decomposição sem perdas. Logo, temos a nossa</p><p>resposta na alternativa C.</p><p>Gabarito: C</p><p>23. Ano: 2015 Banca: FGV Órgão: TJ-BA Cargo: Analista Judiciário - Tecnologia da Informação</p><p>Considere as dependências funcionais apresentadas a seguir.</p><p>D→ C</p><p>C→ D</p><p>C→ N</p><p>C→ E</p><p>Sabendo-se que todos os atributos são atômicos, o esquema relacional que satisfaz as formas</p><p>normais 1ª, 2ª, 3ª e Boyce-Codd é:</p><p>A) R (D, C, N, E) onde D é a chave primária e C é uma chave candidata;</p><p>B) R1 (D, C, N, E) onde D é a chave primária;</p><p>C) R1 (C, N, E) onde C é a chave primária, e R2 (C, D) onde C é a chave primária;</p><p>D) R1 (C, N, E) onde C é a chave primária, e R2 (C, D) onde D é a chave primária;</p><p>E) R (D, C, N, E) onde D e C, concatenados, formam a chave primária.</p><p>Comentário: Vamos analisar a questão. Primeiro ponto relevante é que o examinador fala que</p><p>todos os atributos são atômicos. Com essa informação fica redundante dizer que o esquema</p><p>está na primeira forma normal. Agora temos que montar um modelo que elimine as</p><p>dependências parciais e transitivas, e onde todo determinante seja chave candidata.</p><p>Vejam que a partir das DF descritas, tanto C quanto D podem ser chaves primárias da relação,</p><p>ou seja, são chaves candidatas. Observa-se que temos que escolher um dos dois campos para</p><p>ser chave. Sendo assim temos a resposta para a questão na alternativa A.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>198</p><p>321</p><p>Algumas pessoas podem questionar se as alternativas C e D não estariam correta. Essa</p><p>questão gerou um debate intenso na época da realização da prova e alguns candidatos</p><p>entraram com um recurso mais foram todos indeferidos.</p><p>Na minha opinião, embora os modelos apresentados pelas letras C e D não apresentem</p><p>problemas quanto as formas normais, eles não são os mais otimizados e não possuem a</p><p>propriedade de minimizar a redundância do modelo. Perceba que as informações sobre C</p><p>estarão armazenadas em R1 e R2. Sendo assim, se tivéssemos que escolher a mais correta</p><p>continuaria sendo a alternativa A.</p><p>Gabarito: A.</p><p>24. Ano: 2014 Banca: FGV Órgão: PROCEMPA Cargo: Analista de Tecnologia da Informação e</p><p>Comunicação I (adaptada)</p><p>Considere uma tabela relacional R com atributos W, T, X, Y e Z, para os quais as dependências</p><p>funcionais a seguir se verificam.</p><p>W, T→ X</p><p>W, T→ Y</p><p>W, T→ Z</p><p>X→ T</p><p>Considere ainda que a tabela R tenha sido definida com um identificador apenas, W, definido</p><p>como chave-primária. Assinale a forma normal que é violada pela tabela R definida desta</p><p>forma.</p><p>A) Primeira</p><p>B) Segunda.</p><p>C) Terceira.</p><p>D) Boyce-Codd.</p><p>E) Quarta.</p><p>Comentário: Questão interessante. Perceba que, quando a DF X ฀ T é estabelecida, podemos</p><p>partir do princípio de que X vai diferenciar qualquer valor de T da relação. Sendo X um</p><p>determinante que não é chave candidata, podemos chegar a violação da forma normal de</p><p>Boyce-Codd (alternativa D). Podemos também observar que não temos nenhum problema</p><p>com as FN anteriores. Contudo, não podemos garantir a 4FN, pois essa é baseada em</p><p>dependências multivaloradas que não estão explicitadas na questão.</p><p>Gabarito: D.</p><p>Disclaimer: A questão original tinha uma dependência funcional trivial entre as DF descritas no</p><p>enunciado. Neste caso, tínhamos que X ฀ X. Tal fato não gera problemas com nenhuma das</p><p>formas normais, o que deixa a questão sem resposta.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>199</p><p>321</p><p>25. Ano: 2016 Banca: FGV Órgão: IBGE Cargo: Analista - Análise e Desenvolvimento de Aplicações</p><p>Na derivação de dependências funcionais num projeto relacional, está correto afirmar que se</p><p>A, B→ X, Y então é certo que:</p><p>A) A→ X</p><p>B) A→ X, Y</p><p>C) X, Y→ A</p><p>D) A, B→ X</p><p>E) X, Y→ A, B</p><p>Comentário: Existem no contexto de dependências funcionais um conjunto de regras de</p><p>inferência. As seis regras difundidas são:</p><p>IR1 (regra reflexiva): Se X contém Y, então X ฀ Y.</p><p>IR2 (regra aumentativa): Se X ฀ Y, então XZ ฀ YZ.</p><p>IR3 (regra transitiva): Se X ฀ Y e Y ฀ Z, então X ฀ Z</p><p>IR4 (regra da decomposição ou projetiva): Se X ฀ YZ, então X ฀ Y.</p><p>IR5 (regra da união ou aditiva): Se X ฀ Y e X ฀ Z, então X ฀ YZ.</p><p>IR6 (regra pseudotransitiva): Se X ฀ Y e WY ฀ Z, então WX ฀ Z</p><p>Observando as regras acima podemos concluir que a única DF que podemos derivar de A, B ฀</p><p>X, Y que está presente entre as alternativas é a D. Não podemos fazer redução do</p><p>determinante para A, como sugere as alternativas A e B, pois não temos nenhuma garantia</p><p>que essa DF vai ser consistente. Também não podemos inverter a ordem da DF, como está</p><p>proposto nas letras C e E.</p><p>Gabarito: D.</p><p>26. Ano: 2016 Banca: FGV Órgão: IBGE Cargo: Analista - Análise e Desenvolvimento de Aplicações</p><p>Considere uma tabela relacional R (A1, A2, ... , An) que, depois denormalizada, foi</p><p>decomposta num esquema com três tabelas, R1,R2 e R3. Nesse caso, diz-se que a</p><p>decomposição ocorreu sem perda quando:</p><p>A) todas as dependências funcionais existentes para os atributos de R1, R2, R3 são</p><p>preservadas em R;</p><p>B) qualquer instância de R pode ser recuperada a partir de junções de R1, R2 e R3;</p><p>C) nenhuma das tabelas R1, R2 e R3 contém todos os atributos de R;</p><p>D) todas as tabelas R1, R2 e R3 possuem chaves primárias;</p><p>E) a soma do número de atributos de cada tabela R1, R2 e R3 é maior que o número de</p><p>atributos de R.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>200</p><p>321</p><p>Comentário: A propriedade da junção sem perdas ou junção não aditiva assegura que</p><p>nenhum tupla espúria é gerada quando uma operação de NATURAL JOIN for aplicada às</p><p>relações da decomposição. É possível então que qualquer instancia de R seja recuperada a</p><p>partir das junções entre R1, R2 e R3. Nossa resposta, portanto, encontra-se na alternativa B.</p><p>Gabarito: B.</p><p>27. Ano: 2015 Banca: FGV Órgão: DPE-RO Cargo: Analista - Programador</p><p>Observe a instância de uma tabela relacional R, mostrada a seguir.</p><p>A dependência funcional que certamente NÃO pode ser depreendida dessa instância é:</p><p>A) A1→ A2</p><p>B) A1, A2→ A2</p><p>C) A2→ A3</p><p>D) A1→ A3</p><p>E) A3→ A2</p><p>Comentário: Para resolver essa questão temos que pensar no conceito de DF. Quando</p><p>dizemos que X ฀ Y, estamos afirmando que para qualquer valor de X passado eu consigo</p><p>determinar um valor único para Y. Pensado desta forma podemos procurar um contraexemplo</p><p>na questão para as alternativas. Percebam que a DF da alternativa E diz que A3 ฀ A2. Se</p><p>observamos o caso concreto, existem três tuplas cujo valor de A3 é 3, porém o valor de A2</p><p>varia (6 e 4), desta forma, não temos uma DF nesta alternativa, que passa a ser nossa</p><p>resposta.</p><p>Exercício: observem que nas demais alternativas as DF são válidas.</p><p>Gabarito: E.</p><p>28. Ano: 2015 Banca: FGV Órgão: DPE-RO Cargo: Analista - Programador</p><p>Considere um projeto de bancos de dados relacional onde as seguintes dependências</p><p>funcionais se verificam.</p><p>C1→ C2</p><p>C1→ C3</p><p>C3→ C4</p><p>Uma tabela T de atributos C1, C2, C3, C4, na qual C1 é um identificador, verifica a terceira</p><p>forma normal somente se:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>201</p><p>321</p><p>A) C1 e C2</p><p>forem definidos como identificadores para T;</p><p>B) C4 determinar C3;</p><p>C) C3 determinar C1;</p><p>D) C1 e C3 forem definidos como identificadores para T;</p><p>E) C3 for definido como o único identificador para T.</p><p>Comentário: Vejam que esse é mais uma questão que temos que pensar na forma normal de</p><p>Boyce-Codd. A ideia, para resolver a questão, é que temos que fazer com que a dependência</p><p>transitiva C1 ฀ C3 ฀ C4 deixe de existir. Para tal, precisamos de C3 seja uma chave candidata</p><p>da relação. Resolvemos esse problema se incluirmos a DF C3 ฀ C1. Assim, por transitividade</p><p>C3 ฀ C2, sendo, portanto, chave candidata da relação.</p><p>Percebam que essa sugestão está na alternativa C, que é a nossa resposta.</p><p>Gabarito: C.</p><p>29. Ano: 2015 Banca: FGV Órgão: TJ-PI Cargo: Analista Judiciário</p><p>De acordo com a teoria de projeto de bancos de dados, dependências funcionais podem ser</p><p>estabelecidas por meio de processos de derivação a partir de dependências já conhecidas, u</p><p>pelas chamadas dependências triviais. Sabendo-se que existem as dependências</p><p>A→ B</p><p>B→ C</p><p>C→ D</p><p>NÃO é possível daí derivar:</p><p>A) A→ B, C</p><p>B) A→ C</p><p>C) A→ B, C, D</p><p>D) B→ D</p><p>E) C→ A</p><p>Comentário: Pela teoria das dependências podemos derivar das DF existentes: A ฀ C, B ฀ C e</p><p>A ฀ D, pela regra da transitividade; A ฀ B, C e A ฀ B, C, D, pela regra da união. Nos resta para</p><p>responder à questão a letra E, que de fato não pode ser derivada.</p><p>Gabarito: E.</p><p>30. Ano: 2015 Banca: FGV Órgão: TJ-PI Cargo: Analista Judiciário</p><p>Considere uma tabela relacional T definida para os atributos A, B, C e D, todos com valores</p><p>atômicos. Considere também que o atributo A foi definido como chave primária dessa tabela.</p><p>R (A, B, C, D)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>202</p><p>321</p><p>As dependências funcionais definidas para os atributos dessa tabela são:</p><p>A→ B</p><p>B→ C</p><p>A→ D</p><p>A→ C</p><p>Como definida acima, a tabela T viola a forma normal conhecida como:</p><p>A) 1FN;</p><p>B) 2FN;</p><p>C) 3FN;</p><p>D) FN Boyce-Codd;</p><p>E) 4FN.</p><p>Comentário: Vejam que a FGV gosta deste tipo de questão. Nesta, o examinador passa um</p><p>conjunto de DF e pede para verificar a forma normal violada. Observe que existe uma</p><p>transitividade A ฀ B ฀ C e B não é chave candidata, nem C faz parte da chave primária sendo</p><p>assim temos uma violação à 3FN.</p><p>Gabarito: C.</p><p>31. Ano: 2015 Banca: FGV Órgão: TJ-PI Cargo: Analista Judiciário</p><p>No Brasil, cada pessoa possui apenas um CPF e cada pessoa pode possuir apenas um nome.</p><p>Quando numa tabela de um banco relacional há uma coluna com o CPF de uma pessoa e seu</p><p>respectivo nome, a coluna CPF deve ser uma chave, primária ou candidata.</p><p>Essa exigência faz parte do processo de normalização do banco de dados, e é decorrente do</p><p>enunciado da:</p><p>A) primeira forma normal;</p><p>B) segunda forma normal;</p><p>C) terceira forma normal;</p><p>D) forma normal Boyce-Codd;</p><p>E) quarta forma normal.</p><p>Comentário: Essa questão tem um pulo do gato. Você tem que pensar nos enunciados das</p><p>formas normais. Vou deixar como exercício mental você lembrar das três primeiras! ☺ Veja</p><p>agora a definição da FNBC: Todo determinante é chave candidata. Agora pense que a relação</p><p>pessoa pode ter 10 atributos, todo e a chave primárias seja um sequencial qualquer. Para CPF</p><p>se manter nesta relação ele deve ser chave candidata. Essa é uma determinação da FNBC.</p><p>Gabarito: D.</p><p>32. Ano: 2015 Banca: FGV Órgão: TJ-RO Cargo: Analista de Sistemas</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>203</p><p>321</p><p>Observe o comando de criação da tabela relacional T, mostrado a seguir.</p><p>create table T</p><p>(a int not null primary key,</p><p>b int not null)</p><p>Sabendo-se que as dependências funcionais</p><p>a→ b</p><p>b→ a</p><p>verificam-se para todas as instâncias de T, a forma normal transgredida pelo esquema acima é</p><p>a:</p><p>A) Primeira;</p><p>B) Segunda;</p><p>C) Terceira;</p><p>D) Quarta;</p><p>E) Boyce-Codd.</p><p>Comentário: Essa questão, na minha opinião ficou um pouco estranha, mas deve ser resolvida</p><p>com o seguinte pensamento, qual característica derivada das dependências funcionais não</p><p>está descrita no modelo ou mais especificamente, no comando CREATE? Vejam que não ficou</p><p>explicito que o atributo B é único ou chave candidata, desta forma a tabela não reflete as</p><p>regras de DF descritas no modelo, pois viola a forma normal de Boyce-Codd.</p><p>Gabarito: E.</p><p>33. Ano: 2014 Banca: FGV Órgão: TJ-GO Cargo: Analista Judiciário - Análise de Sistemas</p><p>Considere um banco de dados que deve armazenar cinco atributos numéricos: V, W, X, Y e Z.</p><p>Sabe-se que as seguintes dependências funcionais aplicam-se:</p><p>V→W</p><p>V→ X</p><p>V→ Y</p><p>Y→ Z</p><p>O esquema correto para implementar um banco de dados com esses atributos, que cumpra</p><p>os objetivos estabelecidos para projetos de bancos de dados de preservação das</p><p>dependências, normalização e decomposição sem perda, é:</p><p>A) create table R1 (V int not null primary key, W int, X int, Y int) create table R2 (Y int not null</p><p>primary key, Z int)</p><p>B) create table R1 (V int not null primary key, W int, X int, Y int unique, Z int)</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>204</p><p>321</p><p>C) create table R1 (V int not null primary key, W int, X int, Y int) create table R2 (W int not null</p><p>primary key, Z int)</p><p>D) create table R1 (V int not null primary key, W int, X int) create table R2 (Y int not null</p><p>primary key, Z int)</p><p>E) create table R1 (V int not null primary key, Y int) create table R2 (Y int not null primary key,</p><p>Z int) create table R3 (W int not null primary key, X int)</p><p>Comentário: Vamos aproveitar essa questão para começar a apresentação do comando SQL</p><p>de criação de tabelas. Percebam que as regra de dependência funcional nos apresenta uma</p><p>DF transitiva (V ฀ Y ฀ Z), devemos então separa esses valores em duas relações R1 (V, W, X, Y)</p><p>e R2 (Y, Z). De posse das relações, podemos aplica-las ao comando de criação de tabelas.</p><p>Vejam que a sintaxe correta está presente na alternativa A.</p><p>Gabarito: A.</p><p>34. Ano: 2014 Banca: FGV Órgão: TJ-GO Cargo: Analista Judiciário - Análise de Sistemas</p><p>Em algumas das questões que seguem desta disciplina, o banco de dados simplificado,</p><p>denominado COPA_BD, será utilizado como referência.</p><p>DESCRIÇÃO DO BANCO DE DADOS COPA_BD</p><p>O banco de dados armazena informações sobre os jogos de um grupo de países na fase de</p><p>classificação da Copa do Mundo, na qual os times jogam entre si. É constituído por quatro</p><p>tabelas, cujos atributos e instâncias são as que seguem.</p><p>Observações:</p><p>Cada registro na tabela Participação representa um dos times que participaram de um</p><p>determinado jogo, no papel de mandante ou visitante, juntamente com o número de pontos</p><p>obtidos no jogo (um gol pode ser normal ou contra); Cada registro na tabela Gol representa</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>205</p><p>321</p><p>um gol, contra ou a favor, feito pelo jogador no tempo indicado; Chaves primárias, candidatas</p><p>e estrangeiras ainda não foram estabelecidas.</p><p>Tomando-se como referência os atributos da tabela Participação do banco de dados</p><p>COPA_BD, a dependência funcional estabelecida entre eles é:</p><p>A) nomePaís→ idJogo</p><p>B) nomePaís→ papel</p><p>C) nomePaís, papel→ idJogo</p><p>D) nomePaís, idJogo→ papel</p><p>E) idJogo→ nomePaís</p><p>Comentário: Essa é uma questão um pouco mais prática, na qual podemos observar nas</p><p>tabelas as instâncias e os valores de cada coluna para extrair as dependências funcionais.</p><p>Vejam que temos que considerar que esses são todos os valores existentes nas tabelas e que</p><p>os futuros registros inseridos seguirão essas DF.</p><p>Vamos agora procurar as DF, para isso temos que encontrar conjuntos de atributos X e Y, onde</p><p>X ฀ Y, ou seja, para cada valor de X que você me apresenta eu posso te entregar um e apenas</p><p>um valor para Y.</p><p>Fica aqui um exercício para que você verifique cada</p><p>visualização dos dados</p><p>dispersos em diversas tabelas, tornando-os mais natural ou intuitivo ao entendimento humano.</p><p>Outra função importante para a view está relacionada à segurança dos dados. É possível</p><p>restringir o acesso aos campos e às colunas de uma tabela por meio de uma view. Desta forma, o</p><p>usuário teria visão apenas a parte dos dados ou das informações. Esse grupo de informações</p><p>deve ser compatível com as funções e as necessidades de acesso do usuário.</p><p>Uma terceira opção para o uso de view é sumarizar dados de diferentes tabelas, gerando</p><p>relatórios. Vejamos abaixo dois exemplos do uso de Views. Lembrando que ela pode ser criada</p><p>sobre uma ou múltiplas tabelas. Observe que o comando, basicamente, inclui a sintaxe CREATE</p><p>VIEW nome AS antes de uma consulta ao banco de dados.</p><p>Para visualizarmos os dados de uma visão, basta escrevermos um comando SELECT sobre ela,</p><p>veja o exemplo sobre a view profs_estrategia criada acima.</p><p>A view é considerada uma tabela virtual, porque ela só existe durante o período que você está</p><p>utilizando-a. Todas as operações que são feitas sobre a tabela podem ser feitas em uma VIEW,</p><p>mas a tabela é virtual e, na teoria, não deve ser armazenada no banco de dados.</p><p>Vamos comparar os conceitos de tabelas e visões de forma pragmática. A distinção entre uma</p><p>tabela básica e uma visão é constantemente caracterizada dessa maneira:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>19</p><p>321</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>Uma view é uma tabela que é atualizada no momento em que uma das tabelas consultadas é</p><p>atualizada; a view permite consultas ao banco de dados de forma mais rápida quando</p><p>comparada à utilização de índices.</p><p>Comentários:</p><p>Uma visão é uma tabela temporária. Ela é carregada no momento em que o usuário acessa a</p><p>visão. Dependendo da sua estrutura (da consulta que vou utilizada para extrair os dados) essa</p><p>visão pode sofrer atualização e essas atualizações podem ser refletidas nas tabelas subjacentes.</p><p>As atualizações nas tabelas não são refletidas na visão imediatamente. A visão não</p><p>necessariamente melhora a performance do banco de dados e não faz sentido compará-la a um</p><p>índice.</p><p>Gabarito: ERRADO</p><p>OK! Até aqui falamos que a visão é uma tabela virtual que não é armazenada fisicamente.</p><p>Contudo, alguns SGBDs utilizam o conceito de visão materializada (também conhecida como</p><p>snapshot), ou seja, eles guardam os registros de uma visão em um arquivo no disco. Isso traz um</p><p>benefício de performance. Para efeitos de concursos públicos, você só deve considerar a</p><p>existência deste tipo de visão se a banca deixar explícito no enunciado.</p><p>Outro ponto interessante é o seguinte: a visão é uma consulta feita sobre dados de banco de</p><p>dados e carregados na memória! Isso você já sabe ... mas, depois de carregar os dados na</p><p>memória, você pode manipulá-lo, inclusive fazendo atualização nos dados da visão. Daí eu</p><p>pergunto, essas atualizações serão refletidas nas tabelas subjacentes (as tabelas que são usadas</p><p>como referência para a consulta)?</p><p>A resposta é: DEPENDE!! Como assim? Se cada linha da visão estiver relacionada a uma linha da</p><p>tabela subjacente, as atualizações serão refletidas na base de dados, da mesma forma que as</p><p>atualizações na tabela subjacente devem ser repassadas a visão. Contudo, caso exista alguma</p><p>função de agregação ou agrupamento (GROUP BY ou HAVING), ou a visão seja definida sobre</p><p>várias tabelas com consultas aninhadas, a complexidade impede a atualização das tabelas base.</p><p>Isso nos leva a uma classificação bastante difundida das visões: elas podem ser simples ou</p><p>complexas. A visualização simples é criada a partir de apenas uma única tabela e não possui</p><p>nenhuma função. As operações de manipulação podem ser executadas sobre essas visões. Já as</p><p>visões complexas contêm mais de uma tabela base ou é criada a partir de mais de uma tabela,</p><p>podem possuir funções agregadas e grupos de dados. Não é possível aplicar operações de</p><p>manipulação diretamente sobre visões complexas.</p><p>Agora vamos colocar essas definições em um esquema:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>20</p><p>321</p><p>Figura 1 - Conceitos de Visão.</p><p>Índices</p><p>O primeiro conceito que devemos ter em mente sobre o assunto é a definição de índices. Um</p><p>índice é um mecanismo utilizado para melhorar a velocidade de acesso aos dados. Ele é</p><p>composto por uma chave, que é um atributo ou um conjunto de atributos usado para procurar</p><p>registros em um arquivo. Um índice também possui um ponteiro, que consiste em um</p><p>identificador para um bloco de disco, além do deslocamento dentro do bloco para encontrar o</p><p>registro.</p><p>Um arquivo de índice consiste em um conjunto de registros com o formato apresentado na figura</p><p>abaixo. A esse registro se dá o nome de registro de índice ou entrada de índice.</p><p>Como uma técnica para criar estruturas de dados auxiliares, os índices agilizam a busca e a</p><p>recuperação de registros. Para isso, eles envolvem armazenamento de dados auxiliares. Esses</p><p>dados são armazenados nos arquivos de índices. Alguns tipos de acesso podem se beneficiar dos</p><p>índices, por exemplo, a localização de registro com um valor especificado e a localização de</p><p>registros em um intervalo especificado de valores. Veja a figura abaixo para entender um pouco</p><p>mais sobre índices:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>21</p><p>321</p><p>É necessário saber se esse benefício, de fato, traz um ganho de desempenho ao sistema de</p><p>banco de dados. Avaliar os índices para medir seus efeitos na performance é um passo</p><p>importante. Vários SGBDs possuem utilitários que ajudam a quantificar os efeitos pretendidos</p><p>com a criação de índices sobre tabelas. Esse valor é baseado em alguns fatores, entre eles, o</p><p>tempo de acesso, inserção e deleção; o overhead de espaço em disco e os métodos de acesso</p><p>suportados.</p><p>Um índice é dito denso quando existe uma entrada de índice no arquivo para cada valor de</p><p>chave de pesquisa e, portanto, para cada registro no arquivo. Definimos um índice como esparso,</p><p>quando temos entradas de índices apenas para alguns valores de pesquisa. Os índices primários</p><p>e de clustering são categorizados como esparsos.</p><p>Os índices podem ainda ser classificados de acordo com a figura abaixo:</p><p>Figura 2 - Conceitos de índices</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>22</p><p>321</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>Os índices secundários precisam ser densos, com uma entrada de índice para cada valor de</p><p>chave de busca e um ponteiro para cada registro no arquivo.</p><p>Comentários:</p><p>Os índices secundários são criados sobre colunas que não seguem a mesma ordenação do</p><p>arquivo. Desta forma, para cada entrada do arquivo de dados é necessário um registro no</p><p>arquivo de índice, o que faz com que o índice seja considerado DENSO.</p><p>Gabarito: CERTO</p><p>Chaves e Relacionamentos</p><p>Superchave, chave, chave candidata, chave primária e chave estrangeira</p><p>Vamos começar falando sobre a chave. Existem alguns conceitos relacionados à chave. O</p><p>primeiro deles é o de superchave. Trata-se de uma coluna ou uma combinação de colunas</p><p>contendo valores únicos para cada linha. A combinação de todas as colunas em uma tabela</p><p>sempre é uma superchave, porque as linhas de uma relação devem ser sempre únicas.</p><p>Uma definição formal afirma que uma superchave de um esquema de relação R = {A1, A2,</p><p>..., An} é um conjunto de atributos S C R (S está contido em R) que contenha a propriedade na</p><p>qual não haverá duas tuplas t1 e t2, em qualquer estado</p><p>uma das alternativas da questão, ao final</p><p>você deve concluir qual a alternativa correta.☺</p><p>Gabarito: D.</p><p>35. Ano: 2014 Banca: FGV Órgão: TJ-GO Cargo: Analista Judiciário - Análise de Sistemas</p><p>Essa questão usa a mesma figura da questão anterior:</p><p>Observações:</p><p>Cada registro na tabela Participação representa um dos times que participaram de um</p><p>determinado jogo, no papel de mandante ou visitante, juntamente com o número de pontos</p><p>obtidos no jogo (um gol pode ser normal ou contra); Cada registro na tabela Gol representa</p><p>um gol, contra ou a favor, feito pelo jogador no tempo indicado; Chaves primárias, candidatas</p><p>e estrangeiras ainda não foram estabelecidas.</p><p>Para a definição da chave primária da tabela Participação do banco de dados COPA_BD, a</p><p>combinação de atributos mais adequada seria:</p><p>A) nomePaís, idJogo, papel, pontos;</p><p>B) nomePaís, idJogo, papel;</p><p>C) nomePaís, idJogo;</p><p>D) nomePaís, papel;</p><p>E) nomePaís.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>206</p><p>321</p><p>Comentário: Essa questão ficou mais fácil de ser feita após a definição da DF, estabelecida na</p><p>questão anterior. Vejam que nos foi solicitada a definição da chave da tabela participação.</p><p>Precisamos procurar então um conjunto de atributos que identifique unicamente qualquer</p><p>linha da tabela. Analisando as alternativas podemos chegar ao gabarito na alternativa C.</p><p>Gabarito: C.</p><p>36. Ano: 2014 Banca: FGV Órgão: TJ-GO Cargo: Analista Judiciário - Análise de Sistemas -</p><p>Desenvolvimento</p><p>Considere a tabela de um banco de dados relacional</p><p>R (A, B, C, D)</p><p>onde os atributos A e B, separadamente, são identificadores. Nesse caso, o processo de</p><p>normalização da tabela R requer que, entre outras, seja preservada a dependência funcional:</p><p>A) B→ A</p><p>B) C→ D</p><p>C) D→ A</p><p>D) C→ A</p><p>E) C→ B</p><p>Comentário: Essa questão me pareceu meio redundante do ponto de vista da DF utilizada na</p><p>resposta. Vejam que no enunciado ele já apresenta A e B como identificadores, na minha</p><p>opinião eles já são considerados chaves, então, podemos concluir que A ฀ B, C, D e B ฀ A, C,</p><p>D. Mas o examinador achou que não, então precisamos garantir que B seja chave candidata</p><p>com a seguinte DF: B ฀ A.</p><p>Gabarito: A.</p><p>37. Ano: 2014 Banca: FGV Órgão: TJ-GO Cargo: Analista Judiciário - Análise de Sistemas -</p><p>Desenvolvimento</p><p>No âmbito do projeto de bancos de dados, os Axiomas de Armstrong têm um importante</p><p>papel porque permitem a derivação de dependências funcionais. Uma derivação que NÃO é</p><p>válida é:</p><p>A) se X→ Y e Y→ Z então X→Z</p><p>B) se X→ Y então XZ→YZ</p><p>C) se Y ⊆ X então X→ Y</p><p>D) se X→Y e X→Z então X→YZ</p><p>E) se X→ Y e Z→ Y então X→YZ</p><p>Comentário: Existe um conjunto de propriedades relacionadas a dependências funcionais.</p><p>Basicamente a questão procura verificar seu entendimento a respeito delas. Essas</p><p>propriedades são conhecidas como regras de inferência. Vamos aproveitar para revisarmos</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>207</p><p>321</p><p>essas propriedades. Abaixo um conjunto de três regras que são conhecidas como regras de</p><p>Armstrong: Reflexiva, Aumentativa e Transitiva.</p><p>RI1. (Reflexiva): Se Y é subconjunto de X, então X฀Y (Isso também é válido quando X=Y)</p><p>RI2. (Aumentativa): Se X฀Y, então XZ฀YZ (Notação: XZ significa X U Z)</p><p>RI3. (Transitiva): Se X ฀ Y e Y ฀ Z, então X ฀ Z</p><p>RI1, RI2 e RI3 formam um conjunto completo de regras de inferência, sendo, portanto sólida e</p><p>completa.</p><p>Por sólida queremos dizer que, dado um conjunto de dependências funcionais F especificado</p><p>para um esquema da relação R, toda dependência que pudermos deduzir para F usando RI1 a</p><p>RI3 será assegurada para qualquer estado de relação r de R que satisfizer as dependências de</p><p>F.</p><p>Por completa queremos dizer que, se usarmos RI1 a RI3 sucessivamente para deduzir outras</p><p>dependências funcionais, até que mais nenhuma dependência possa ser deduzida, resultará</p><p>no conjunto completo de todas as dependências possíveis que podem ser inferidas para F.</p><p>Podemos citar ainda outras regras, são elas:</p><p>RI4 (Decomposição): Se X฀YZ, então X฀Y e X฀Z</p><p>RI5 (Aditiva): Se X฀Y e X฀Z, então X฀YZ</p><p>RI6 (Pseudotransitiva): Se X฀Y e WY฀Z, então WX฀Z</p><p>Agora podemos analisar cada uma das alternativas, percebam que a única que não</p><p>conseguimos derivar com as regras vistas acima é a presente na alternativa E.</p><p>Gabarito: E.</p><p>38. Ano: 2014 Banca: FGV Órgão: DPE-RJ Cargo: Técnico Superior Especializado - Administração de</p><p>Dados</p><p>Considere um esquema relacional R e seus atributos atômicos.</p><p>R (CPF, Nome, Cidade, Telefone).</p><p>Sabe-se que as seguintes dependências funcionais aplicam-se:</p><p>CPF ฀ Nome</p><p>CPF ฀ Cidade</p><p>CPF ฀ Telefone</p><p>Considere ainda que tal esquema tenha sido implementado na forma de duas tabelas, R1 e</p><p>R2, assim definidas durante o projeto:</p><p>R1(CPF, Nome, Cidade), onde a única chave é CPF;</p><p>R2(Nome, Telefone), onde a única chave é formada pela concatenação das colunas Nome e</p><p>Telefone.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>208</p><p>321</p><p>Nesse caso, nota-se que o projeto</p><p>A) não cumpre o objetivo de estabelecer uma decomposição sem perda.</p><p>B) não provê independência de dados.</p><p>C) produz uma tabela que viola a primeira forma normal.</p><p>D) produz duas tabelas que violam a Forma Normal Boyce-Codd.</p><p>E) produz uma implementação que não suporta transações atômicas.</p><p>Comentário: A questão propõe um modelo absurdo. Primeiro, precisamos entender que</p><p>telefone não é um atributo multivalorados como estamos acostumados a ver em exemplos</p><p>teóricos de banco de dados. Vejam que CPF determina todos os campos da tabela, portanto,</p><p>não temos que decompor os atributos em mais de uma relação, pois não temos problemas</p><p>com nenhuma das FN que têm relações com DF.</p><p>Agora vamos observar o que foi feito, em especial na criação da relação R2. Ela apresenta um</p><p>campo Nome que não é determinante. Suponha que dois usuários tenham o nome Thiago</p><p>Rodrigues, seus cpfs e cidades sejam, respectivamente, (1, Recife) e (2, Caruaru). Abaixo,</p><p>também associei valores de telefones a cada um dos “Thiagos”. Considerando apenas esses</p><p>dois usuários vamos construir as duas relações:</p><p>R1 (1, Thiago Rodrigues, Recife) (2, Thiago Rodrigues, Caruaru)</p><p>R2 (Thiago Rodrigues, 1234) (Thiago Rodrigues, 5678)</p><p>Veja que se fizermos uma junção entre as duas tabelas vamos obter 4 tuplas o que fere a ideia</p><p>de junção não aditiva ou junção sem perdas. Por isso, nossa reposta encontra-se na</p><p>alternativa A.</p><p>Gabarito: A.</p><p>39. Ano: 2014 Banca: FGV Órgão: DPE-RJ Cargo: Técnico Superior Especializado - Administração de</p><p>Dados</p><p>Sobre os atributos atômicos W, X, Y, Z, aplicam-se as seguintes dependências funcionais:</p><p>W฀X</p><p>W฀Y</p><p>Y฀W</p><p>Y฀Z</p><p>Considerando que, nos esquemas apresentados, cada chave é representada por um ou mais</p><p>atributos sublinhados por um segmento de reta contínuo, o esquema R que satisfaz a Forma</p><p>Normal Boyce-Codd (FNBC) é</p><p>A) R (W, X, Y, Z), onde W é a única chave.</p><p>B) R (W, X, Y, Z), onde W e Y são chaves distintas.</p><p>C) R (W, X, Y, Z), onde Y é a única chave.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>209</p><p>321</p><p>D) R (W, X, Y, Z), onde W, Y e Z são chaves distintas.</p><p>E) R (W, X, Y, Z), onde a única chave é formada pela concatenação de W, X, Y, Z.</p><p>Comentário: É impressionante a criatividade da FGV para fazer questões relacionadas a FNBC.</p><p>Temos que ter em mente que todo determinante é chave candidata. Sendo assim, podemos</p><p>analisar as dependências funcionais descritas no enunciado, a partir deles podemos perceber</p><p>que W e Y precisam ser chaves candidatas e distintas. Essa descrição está presente na</p><p>alternativa B, que é na nossa resposta.</p><p>Gabarito: B.</p><p>40. Ano: 2014 Banca: FGV Órgão: DPE-RJ Cargo: Técnico Superior Especializado - Administração de</p><p>Dados</p><p>válido da relação, cuja t1[S] = t2[S]. Em</p><p>outras palavras, uma superchave é um conjunto de atributos que tem a característica de restringir</p><p>o conjunto de tuplas de uma relação em apenas uma linha.</p><p>Quando olhamos para um conjunto de atributos em uma tabela que não se repetem em</p><p>nenhuma das linhas da tabela, podemos considerá-los uma superchave.</p><p>Já entendemos o conceito de superchave. Uma superchave pode ser considerada apenas uma</p><p>chave. Neste caso, a chave é defendida como uma superchave mínima ou irredutível (vou</p><p>chamá-la de K), onde qualquer remoção de atributo de K fará com que K deixe de ser superchave</p><p>da relação. Se um esquema tiver mais de uma chave, cada uma delas é chamada de chave</p><p>candidata. Entre as chaves candidatas, uma delas é escolhida para ser a chave da relação e é</p><p>denominada chave primária. As demais são renegadas e são denominadas chaves secundárias ou</p><p>alternativas.</p><p>Segundo o Date, se K for um conjunto de atributos de uma variável de relação R, então K é uma</p><p>chave candidata para R, se e somente se, ela possui ambas as propriedades.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>23</p><p>321</p><p>De posse deste conhecimento, é possível definir o conceito de atributo primário, que nada mais</p><p>é do que um atributo membro (que faz parte) de alguma chave candidata da relação (R). Por sua</p><p>vez, de forma bem intuitiva, um atributo não primário é todo aquele que não for um atributo</p><p>primário!</p><p>Vejamos, então, duas questões do CESPE sobre este assunto.</p><p>Ano: 2019 Banca: CESPE Órgão: SEFAZ-RS Prova: Auditor Assunto: Banco de Dados</p><p>No modelo relacional, a afirmação “Duas tuplas distintas, em qualquer estado da relação, não</p><p>podem ter valores idênticos para os atributos na chave” é</p><p>a) uma propriedade de chave do modelo.</p><p>b) falsa.</p><p>c) uma restrição de domínio do modelo.</p><p>d) uma propriedade exclusiva do modelo objeto-relacional.</p><p>e) uma condição que deverá estar explícita na representação dos atributos de uma tupla.</p><p>Comentário:</p><p>As principais propriedades das chaves são unicidade e irredutibilidade. Vejamos as definições:</p><p>Unicidade: Nenhum valor válido de relação contém duas tuplas diferentes com o mesmo valor</p><p>para os atributos chave.</p><p>Irredutibilidade: Nenhum subconjunto apropriado da chave tem a</p><p>propriedade de unicidade. Veja que a questão trata de unicidade, logo</p><p>uma propriedade de chave do modelo.</p><p>Gabarito: A</p><p>BANCA: CESPE ANO: 2015 ÓRGÃO: TJDFT PROVA: PROGRAMAÇÃO DE SISTEMAS</p><p>Julgue os itens seguintes a respeito de banco de dados.</p><p>[61] Em uma tabela de um banco de dados relacional, se uma restrição de chave primária for</p><p>definida como composta de mais de uma coluna, os seus valores poderão ser duplicados em</p><p>uma coluna; no entanto, cada combinação de valores de todas as colunas na definição da</p><p>restrição de chave primária deve ser exclusiva.</p><p>Comentário:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>24</p><p>321</p><p>Questão interessante, pois nos permite fazer um rápido comentário sobre chaves. Uma chave</p><p>identifica unicamente uma linha de uma relação. Toda relação pode ter vários conjuntos de</p><p>atributos que podem ser escolhidos como chaves primárias. Cada uma dessas opções que se</p><p>caracterizam por ser uma superchave mínima, ou seja, não é possível retirar nenhum atributo</p><p>sem que o conjunto perca a propriedade de ser chave da relação, é denominada chave</p><p>candidata. A chave escolhida para ser a chave da relação é denominada chave primária. Ela</p><p>pode ser composta por um ou mais atributos.</p><p>A questão pede para analisarmos uma característica de chaves compostas por mais de um</p><p>atributo. Percebam que a unicidade dos valores deve considerar o conjunto dos atributos e não</p><p>um atributo individualmente. Sendo assim, a alternativa encontra-se correta.</p><p>Gabarito: C</p><p>Nesta parte da aula, gostaria que você fixasse o conceito de chave primária e estrangeira. Esse é</p><p>um conceito importante dentro do assunto de banco de dados. A chave primária vai ser usada</p><p>pelo SGBD na organização dos arquivos de dados. Isso significa que o acesso aos dados pode</p><p>ser feito de forma mais rápida, usando o conjunto de atributos definido como chave primária.</p><p>O conjunto de atributos deve manter a propriedade de unicidade, ou seja, cada valor associado a</p><p>uma chave primária só pode aparecer em uma linha da tabela. Olhe para a figura abaixo e me</p><p>responda: quais campos podem ser usados como chave primária da tabela APROVADOS?</p><p>APROVADOS</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>25</p><p>321</p><p>==1365fc==</p><p>Se você pensou nos atributos Id_Aprovado, CPF e Passaporte, parabéns! Você pensou certo.</p><p>Qualquer um destes campos pode ser usado como chave primária da tabela, por isso, eles são</p><p>denominados chaves candidatas. No nosso exemplo, escolhemos o atributo Id_aprovado para</p><p>ser usado como chave primária da relação Aprovados e o campo Id_Municipio para ser chave</p><p>primária da relação MUNICIPIO. As outras chaves que foram preteridas podem ser denominadas</p><p>chave alternativa.</p><p>Agora, vamos falar sobre a chave estrangeira. Observe que, na relação aprovados, temos um</p><p>campo denominado Municipio. Esse campo vai “apontar” para a chave primária da tabela</p><p>Municipio (Id_Municipio). O que acontece aqui é que os valores presentes na coluna Municipio</p><p>da tabela aprovados devem estar presentes na chave da tabela município. Outra opção é que o</p><p>valor seja definido como desconhecido (nulo). Qualquer outro valor que apareça na coluna</p><p>Municipio fere a integridade referencial. Neste caso, é como se você estivesse se referindo a um</p><p>município não cadastrado. Isso fere a integridade referencial que vimos anteriormente.</p><p>A chave estrangeira é considerada uma coluna ou uma combinação de colunas em que os valores</p><p>devem corresponder aos valores de uma chave candidata. A chave estrangeira deve ter tipo de</p><p>dado igual ao da chave candidata associada. As chaves estrangeiras são usadas no modelo</p><p>relacional para construir relacionamentos entre as tabelas.</p><p>É possível, ainda, um relacionamento em que a chave estrangeira aponta para a mesma tabela.</p><p>Neste caso, temos um auto relacionamento. Os auto-relacionamentos representam associações</p><p>entre membros do mesmo conjunto. Os auto-relacionamentos não são comuns, mas são</p><p>importantes quando ocorrem. No banco de dados de uma universidade, um professor pode</p><p>supervisionar outros professores e ser supervisionado por um professor. Auto relacionamento</p><p>também pode ser chamado de relacionamento recursivo ou unário (apenas uma entidade</p><p>participa do relacionamento). Veja o exemplo de um auto relacionamento na tabela abaixo:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>26</p><p>321</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>Um banco de dados relacional organiza os dados em tabelas e os vincula, com base em</p><p>campos-chave, e essas relações permitem recuperar e combinar dados de uma ou mais tabelas</p><p>com uma única consulta</p><p>Comentários:</p><p>Exatamente! O princípio da informação diz que tudo no banco de dados relacional é</p><p>representado por atributos em relações. Os relacionamentos seguem essa mesma lógica. Para</p><p>representar os relacionamentos usamos chaves estrangeiras. Os atributos também são usados</p><p>como parâmetros para recuperação das informações e para executar a junção entre duas</p><p>tabelas. Logo, temos uma alternativa correta.</p><p>Gabarito: Certo</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>Em um banco de dados relacional, a chave candidata a primária é formada por um ou mais</p><p>atributos que identificam uma única tupla.</p><p>Comentários:</p><p>A</p><p>ideia é que todo conjunto de atributo que tenha as propriedades de unicidade e</p><p>irredutibilidade seja considerado chave. Numa relação com mais de uma chave, temos um</p><p>conjunto de chaves candidatas a chave primária. Em cada relação, apenas um conjunto de</p><p>atributos pode ser escolhido como chave primária. Toda chave identifica unicamente cada uma</p><p>das linhas ou tuplas de uma relação.</p><p>Gabarito: CERTO.</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>A restrição de integridade referencial exige que os valores que aparecem nos atributos</p><p>especificados de qualquer tupla na relação referenciadora também apareçam nos atributos de</p><p>pelo menos uma tupla na relação referenciada.</p><p>Comentários:</p><p>Essa questão encheu meus olhos de lágrimas. A chave estrangeira é um atributo (ou conjunto</p><p>de atributos) cujo valor é limitado por um outro atributo ou coluna da relação referenciada. Da</p><p>forma como está escrito, conseguimos inclusive visualizar os casos em que a chave estrangeira</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>27</p><p>321</p><p>aponta para a própria tabela, o caso do relacionamento gerencia, onde os valores da coluna</p><p>CPF do gerente é um valor válido na coluna CPF da mesma relação. Parabéns para o CESE!!</p><p>Usar os termos relação referenciada e referenciadora foi sensacional!!</p><p>Gabarito: CERTO</p><p>Em um sistema de banco de dados relacional, o dado do tipo CHAR é usado para armazenar</p><p>um conjunto de caracteres de tamanho variável, ocupando o tamanho da cadeia de caracteres</p><p>do texto armazenado</p><p>Comentários:</p><p>Os dados do tipo CHAR possuem um tamanho fixo em SQL, o conjunto de caracteres de</p><p>tamanho variável é o VARCHAR.</p><p>Gabarito: ERRADO</p><p>(Ministério da Economia – Especialista em Ciência de Dados - 2020) Julgue os itens a seguir, a</p><p>respeito de banco de dados relacionais.</p><p>Chaves estrangeiras não podem ser nulas e cada registro na tabela deve possuir uma, e</p><p>somente uma, chave estrangeira.</p><p>Comentários:</p><p>Chaves estrangeiras, quando não tiverem restrições explícitas na declaração da coluna, podem</p><p>receber valores nulos. Essa situação acontece quando temos relacionamentos não obrigatórios.</p><p>Nestes casos, quando uma instância de uma determinada entidade, não estiver relacionada a</p><p>uma instância da outra entidade, o valor da chave estrangeira será nulo.</p><p>Gabarito: ERRADO</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>28</p><p>321</p><p>RESTRIÇÕES DE INTEGRIDADE</p><p>Vamos sobre as restrições de integridade. Essas restrições visam manter a consistência</p><p>dos dados dentro do seu banco. As regras de integridade podem ser vistas como um</p><p>conjunto de parâmetros ou regras do negócio, previamente estabelecidos e criados no</p><p>banco de dados, aos quais os dados são submetidos. As regras servem para garantir que</p><p>um processo de atualização não resulte em dados inconsistentes.</p><p>As restrições de integridade resguardam o Banco de Dados contra danos acidentais,</p><p>assegurando que mudanças feitas por usuários autorizados não resultem na perda de</p><p>consistência de dados.</p><p>Uma das características mais fortes dos bancos de dados relacionais, quando comparados</p><p>com seus antecessores (em Rede e Hierárquico), está em oferecer mecanismos para a</p><p>criação de regras de integridade diretamente no banco de dados. As regras de integridade</p><p>de dados podem ser implementadas nos SGBDs de forma declarativa ou procedural.</p><p>A integridade declarativa é implementada através de parâmetros opcionais da</p><p>linguagem de definição de dados (DDL). Os tipos mais comuns de integridade</p><p>declarativa são: chave primária (PK), domínio e integridade referencial.</p><p>A integridade procedural se apresenta sob a forma de um programa, cuja lógica</p><p>é escrita pelo programador, na linguagem procedural nativa do SGBD. Esse tipo</p><p>de integridade supre as necessidades não cobertas pelos parâmetros de</p><p>integridade declarativa e pode ser criada através de triggers (gatilhos), stored</p><p>procedures (procedimentos armazenados) ou assertions (afirmações).</p><p>Triggers, stored procedures e assertions são comandos que podem ser usados para fazer</p><p>ajustes na base de dados. Um trigger, por exemplo, é uma estrutura conhecida como</p><p>EVENTO-CONDIÇÃO-AÇÃO. Imagine que uma modificação no banco de dados dispara um</p><p>evento. Por exemplo, uma atualização na tabela funcionário com a inclusão de 10 novos</p><p>servidores.</p><p>Esse evento vai levar à execução de um código ou de um programa. O programa vai verificar</p><p>(condição) se os servidores foram de fato aprovados no concurso público e, em seguida,</p><p>incluir os dados deles na folha de pagamento e no plano de saúde do órgão em questão.</p><p>Eis que descrevemos de forma abstrata a execução de um TRIGGER. As bancas focam</p><p>suas questões sobre esse assunto nos seguintes tipos de restrições de integridade:</p><p>Integridade de Domínio (dom(A)) – restringe os valores válidos que podem ser associados</p><p>a um determinado atributo. É a mais elementar forma de restrição de integridade.</p><p>Ajudam, não somente a garantir os valores inseridos no banco de dados, mas também a</p><p>testar consultas para garantir que as comparações feitas fazem sentido.</p><p>Você deve se lembrar que cada tipo de dado tem um conjunto de operações que pode ser</p><p>executado sobre eles. Imagine as operações de soma e subtração nos tipos de dados</p><p>numéricos. Na linguagem SQL, é implementada pelo comando CHECK.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>29</p><p>321</p><p>Integridade de Chave (Unicidade) – Garante a unicidade do valor da chave primária em</p><p>cada uma das tuplas de uma relação. Implementado pela palavra-chave UNIQUE.</p><p>Integridade de Vazio (def if(x!=null?x==null)) – Basicamente verifica se um valor de um</p><p>determinado atributo pode ou não ter o valor nulo associado a suas instâncias. Podemos</p><p>definir uma coluna como NULL ou NOT NULL em SQL.</p><p>Integridade de Entidade (PK != null) – Afirma que cada tabela deve ter uma chave primária</p><p>e garante que a chave primária de uma entidade não receba o valor nulo.</p><p>Integridade Referencial (FK == PK (Chave Candidata) || FK == null) - Garante que o valor</p><p>que aparece em uma relação para um dado conjunto de atributos também apareça para um</p><p>conjunto de atributos em outra relação. Em SQL, é implementada por meio de uma</p><p>referência da chave estrangeira (FK) de uma relação à chave primária ou atributo UNIQUE</p><p>da outra tabela. Esse valor de chave estrangeira, sempre que existir, deve estar associado</p><p>a um valor da chave primária da outra relação. Caso contrário, pode assumir apenas o valor</p><p>nulo. Veja a figura abaixo para entender melhor esse conceito:</p><p>Observe que o uso de chaves estrangeiras vai permitir a criação de relacionamentos no</p><p>modelo relacional.</p><p>Integridade Semântica (assertions ou triggers) – Uma asserção é um predicado que</p><p>expressa uma condição desejada a ser sempre satisfeita no banco de dados. Um gatilho</p><p>(triggers) é um comando que é executado pelo sistema automaticamente, em consequência</p><p>de uma modificação no banco de dados. Toda vez que um evento acontece, uma condição</p><p>(caso exista) é verificada e uma ação é disparada.</p><p>Ao lado da explicação de cada uma das regras de integridade, existe, entre parênteses,</p><p>uma palavra, uma fórmula ou uma expressão. Elas não existem em nenhuma fonte oficial</p><p>de estudos. São estruturas criadas por mim para facilitar a memorização das restrições de</p><p>integridade. Quando estudamos a linguagem SQL, aprofundamos um pouco mais sobre</p><p>esse assunto com uma visão mais prática dos conceitos apresentados.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>30</p><p>321</p><p>==1365fc==</p><p>Antes de continuarmos</p><p>a tratar do assunto, vamos fazer uma rápida questão. Essa é uma</p><p>questão inédita, criada pela banca TRC para trabalhar pontos específicos do assunto.</p><p>Ano: 2019 Banca: TRC Órgão: Estratégia Concursos Assunto: Restrições de integridade</p><p>Sobre as restrições de integridade presentes no modelo de dados relacional, analise as</p><p>afirmações abaixo. Em seguida, assinale a alternativa que aponta a(s) correta(s).</p><p>I. A restrição de integridade de entidade estabelece que nenhum valor de chave primária</p><p>pode ser null. Isso porque o valor da chave primária é usado para identificar as tuplas</p><p>individuais em uma relação.</p><p>II. Todas as restrições de integridade deveriam ser especificadas no esquema do banco</p><p>de dados relacional, caso queiramos impor essas restrições aos estados do banco de</p><p>dados.</p><p>III. Ter valores null para chave primária implica não podermos identificar alguma tupla.</p><p>IV. A restrição de integridade referencial é classificada entre duas relações e é usada para</p><p>manter a consistência entre as tuplas nas duas relações.</p><p>a) I, II, III e IV. b) I, II e III, apenas c) I, III e IV, apenas d) II, III e IV, apenas</p><p>e) Apenas I</p><p>_______________________</p><p>Comentário: A questão trata das restrições de integridade, que são utilizadas para garantir a consistência dos dados e a</p><p>inviolabilidade em um banco de dados relacional. Podemos citar, como exemplos de restrição de integridade, a integridade de</p><p>entidade, a integridade de vazio, a integridade de chave, a integridade referencial e a integridade semântica. Algumas dessas</p><p>restrições são citadas nas alternativas. Vamos avaliar cada uma delas:</p><p>Alternativa I - Restrição de entidade - define que nenhuma chave primária deve aceitar o valor nulo. Caso contrário, poderíamos</p><p>ter várias tuplas com chave primária contendo o mesmo valor, ou seja, o valor nulo. Isto impediria que pudéssemos identificar</p><p>essas tuplas de forma única. Alternativa correta.</p><p>Alternativa II - As restrições de integridade devem ser implementadas no próprio banco de dados. Dessa forma, o SGDB pode,</p><p>utilizando seus mecanismos internos, garantir, com eficiência, a consistência dos dados. Outros tipos de restrições, relacionadas</p><p>às regras de negócio, serão implementadas na aplicação. Alternativa correta.</p><p>Alternativa III – Lembre-se que nulo é um valor que não consegue identificar nada. Ele é usado para descrever que o valor da</p><p>variável em questão é desconhecido ou inexistente. O atributo número do apartamento da relação endereço pode ser nulo</p><p>quando se referir ao endereço de uma casa. Alternativa correta.</p><p>Alternativa IV - A integridade referencial é o tipo de integridade que provê a consistência de dados relacionados entre duas ou</p><p>mais tabelas. Especificamente, refere-se à chave estrangeira em uma tabela e à chave primária correspondente em outra tabela.</p><p>Também se refere a quais ações o SGDB deverá executar nos dados associados às chaves estrangeiras quando ocorrerem</p><p>mudanças (exclusão, alteração) na chave primária relacionada. Alternativa correta.</p><p>Gabarito: A</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>31</p><p>321</p><p>REGRAS DE CODD</p><p>Para que um banco de dados seja considerado relacional, ele deve seguir as 13 regras</p><p>definidas por E.F.Cood. Apresentamos abaixo as referências a cada uma das regras. É</p><p>muito comum encontrar publicações falando das 12 regras. O que acontece é que são 13</p><p>regras, numeradas de 0 até 12.</p><p>0. Regra fundamental ou regra base: Todas as regras se baseiam na noção de que, para</p><p>um banco de dados ser qualificado como relacional, ele dever utilizar recursos</p><p>exclusivamente relacionais para seu gerenciamento.</p><p>1. Informação: Todas as informações em um banco de dados são representadas de forma</p><p>explícita no nível lógico e são estruturadas exatamente, em apenas uma forma, por</p><p>valores em tabelas. Em outras palavras, todos os valores em bases de dados relacionais</p><p>são representados em colunas e linhas de uma tabela. Veja um exemplo abaixo:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>32</p><p>321</p><p>2. Acesso Garantido: Todos os dados precisam ser acessíveis.</p><p>Cada valor atômico (datum), em um banco de dados relacional,</p><p>possui a garantia de ser logicamente acessado pela</p><p>combinação do nome de tabela, do valor da chave primária e do</p><p>nome da coluna. Ou seja, os dados devem possuir</p><p>identificadores únicos que permitam o acesso aos mesmos,</p><p>evitando problemas de interpretação da informação.</p><p>3. Tratamento sistemático de valores nulos: Valores</p><p>nulos ou em branco devem ser suportados de forma</p><p>sistemática, independentemente do tipo de dado, para</p><p>representar informações inexistentes e informações</p><p>inaplicáveis. É também implícito que tais</p><p>representações devem ser manipuladas pelo SGBD de</p><p>maneira sistemática.</p><p>4. Catálogo on-line dinâmico: A descrição ou metadados do banco de dados é</p><p>representada no nível lógico da mesma forma que os dados ordinários, permitindo que os</p><p>usuários autorizados utilizem a mesma linguagem relacional aplicada aos dados regulares</p><p>para terem acesso aos mesmos. É possível usar a linguagem SQL para conhecer as</p><p>descrições das tabelas do banco, por exemplo. Veja a descrição de um conjunto de tabelas</p><p>de um banco de dados na figura abaixo:</p><p>5. Sublinguagem ampla dos dados: Um sistema relacional pode suportar várias</p><p>linguagens e várias formas de recuperação de informações. Entretanto, deve haver pelo</p><p>menos uma linguagem, com uma sintaxe bem definida e expressa por um conjunto de</p><p>caracteres, que suporte de forma compreensiva todos os seguintes itens:</p><p>• Sintaxe linear</p><p>• Acesso de forma interativa e/ou por meio de programas</p><p>• Operações de definição de dados, definição de "views", manipulação de dados</p><p>(interativa e embutida em programas), restrições de integridade,</p><p>autorizações/segurança de acesso.</p><p>• Administração de transações (begin, commit e rollback).</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>33</p><p>321</p><p>6. Atualização de visualizações: Todas as</p><p>"views" ou visões dos dados que são</p><p>teoricamente atualizáveis devem também ser</p><p>atualizáveis pelo sistema. Lembrem-se que as</p><p>visões nem sempre podem ser atualizáveis, ou</p><p>seja, uma alteração na visão nem sempre gera</p><p>uma mudança de estado nas tabelas</p><p>associadas.</p><p>7. Inserção, atualização e exclusão de alto nível: A capacidade de manipular um conjunto</p><p>de dados (em uma relação) através de um simples comando deve se estender às operações</p><p>de inclusão, alteração ou exclusão de dados.</p><p>8. Independência física de dados: Programas de aplicação e recursos ad hoc</p><p>permanecem logicamente inalterados quando ocorrem mudanças no método de acesso ou</p><p>na forma de armazenamento físico. Em outras palavras, quando for necessária alguma</p><p>modificação na forma como os dados são armazenados fisicamente, nenhuma alteração</p><p>deve ser necessária nas aplicações que fazem uso do banco de dados. Devem também</p><p>permanecer inalterados os mecanismos de consulta e manipulação de dados utilizados</p><p>pelos usuários finais.</p><p>9. Independência lógica de dados: Mudanças nas relações e nas views provocam pouco</p><p>ou nenhum impacto nas aplicações. Ou seja, as alterações nas tabelas que preservam os</p><p>valores originais não devem afetar os aplicativos e recursos ad hoc.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>34</p><p>321</p><p>==1365fc==</p><p>10. Independência de integridade: As aplicações não são afetadas quando ocorrem</p><p>mudanças nas regras de restrições de integridade. Deve ser possível que todas as regras</p><p>de integridade sejam definidas na linguagem relacional e armazenadas no catálogo de</p><p>sistema,</p><p>não no nível de aplicação. As várias formas de integridade do banco de dados</p><p>(integridade de entidade, referencial, restrição e obrigatoriedade de valores etc.) precisam</p><p>ser estabelecidas dentro do catálogo do sistema ou dicionário de dados, e ser totalmente</p><p>independente da lógica dos aplicativos.</p><p>11. Independência de distribuição: As aplicações não são logicamente afetadas quando</p><p>ocorrem mudanças geográficas dos dados. Ou seja, os usuários finais não devem perceber</p><p>o fato de o banco de dados ser distribuído ou local. Sistemas de banco de dados distribuídos</p><p>(SBDD) podem estar espalhados em diversas plataformas, interligados em rede, e podem,</p><p>inclusive, estar fisicamente distantes entre si. Essa capacidade de distribuição não pode</p><p>afetar a funcionalidade do sistema e dos aplicativos que fazem uso do banco de dados.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>35</p><p>321</p><p>12. Não transposição das regras: Se um sistema</p><p>possui uma linguagem de baixo nível, essa linguagem</p><p>não pode ser usada para subverter as regras de</p><p>integridades e as restrições definidas no nível mais</p><p>alto. Ou seja, o sistema deve ser capaz de impedir</p><p>que qualquer usuário ou programador passe por</p><p>cima de todos os mecanismos de segurança, das</p><p>regras de integridade do banco de dados e das</p><p>restrições, utilizando algum recurso ou linguagem de</p><p>baixo nível que eventualmente possam ser oferecidos</p><p>pelo próprio sistema.</p><p>Agora que você já entendeu as 12 regras de Codd</p><p>aplicadas a banco de dados relacionais, vamos fazer</p><p>uma rápida questão sobre o assunto.</p><p>Ano: 2019 Banca: CESPE Órgão: SEFAZ-RS Prova: Auditor Assunto: Banco de Dados</p><p>Uma das regras de Codd para o modelo relacional consiste</p><p>A na dependência de dados físicos (mudança na memória e no método de acesso).</p><p>B na independência de distribuição.</p><p>C na presença de uma linguagem de programação no SGBD que promova interface com</p><p>o banco de dados, com a segurança e com a atualização dos dados.</p><p>D na subversão das regras de integridade ou restrições quando utilizada uma linguagem</p><p>de baixo nível.</p><p>E no não tratamento das atualizações de visões de dados.</p><p>_______________________</p><p>Comentário: A alternativa B refere-se à 11ª regra de Codd:</p><p>Regra 11: Independência de Distribuição: A Distribuição de partes do SGBD em várias localidades deve ser transparente para os</p><p>seus usuários. Aplicações existentes necessitam continuar operando com sucesso:</p><p>Quando uma versão distribuída do SGBD é introduzida pela primeira vez, e</p><p>Quando dados distribuídos existentes são redistribuídos em outras localidades físicas.</p><p>Gabarito: B</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>36</p><p>321</p><p>ÁLGEBRA RELACIONAL</p><p>Falaremos agora sobre a álgebra relacional, um assunto bastante explorado em concursos</p><p>públicos. Esse tema possui algumas características matemáticas que são baseadas,</p><p>principalmente, na teoria de conjuntos. O conjunto básico de operações utilizadas no</p><p>modelo relacional é conhecido como álgebra relacional. Navathe apresenta três motivos</p><p>para considerarmos essas operações importantes:</p><p>• Fornece alicerce formal para o modelo relacional.</p><p>• É usado como base para implementação e otimização de consultas.</p><p>• Alguns dos seus conceitos são incorporados na linguagem SQL padrão.</p><p>Historicamente, a álgebra e o cálculo relacional foram desenvolvidos antes da linguagem</p><p>SQL. O conjunto básico de operações para o modelo relacional é a álgebra relacional. Essas</p><p>operações permitem que um usuário especifique as solicitações de recuperação</p><p>básicas como expressões da álgebra relacional. O resultado de uma recuperação ou uma</p><p>consulta é uma nova relação.</p><p>Embora a álgebra defina um conjunto de operações para o modelo relacional, o cálculo</p><p>relacional oferece uma linguagem declarativa de nível mais alto para especificar</p><p>consultas relacionais. A álgebra relacional, normalmente, é considerada uma parte do</p><p>modelo de dados relacional. Suas operações podem ser divididas em dois grupos. Um</p><p>grupo inclui conjunto de operações da teoria de conjuntos da matemática; e outro grupo,</p><p>desenvolvidas especificamente para bancos de dados relacionais: as operações</p><p>relacionais.</p><p>Vamos apresentar cada uma das operações e, em seguida, apresentaremos as taxonomias</p><p>ou formas de classificação das operações. Tenham em mente que todas as operações são</p><p>executadas sobre uma ou duas tabelas e o retorno delas é sempre outra relação. Essa</p><p>característica é conhecida como fechamento. Veja a figura abaixo:</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>37</p><p>321</p><p>Figura 1 - Exemplo da propriedade de fechamento</p><p>Veja que, na figura acima, fazemos uma consulta na relação Alunos, retornando a lista dos</p><p>candidatos e suas notas, que denominamos de CandNota. Sobre a relação CandNota,</p><p>faremos uma nova pesquisa para selecionar apenas os candidatos aprovados dentro das</p><p>vagas. Perceba que o resultado dessas operações será sempre outra relação que pode ser</p><p>usada como entrada para outra operação. Isso é extremamente útil para o aninhamento de</p><p>operações. Isso é reflexo da propriedade de fechamento.</p><p>Então, você já sabe que o resultado de uma operação resulta em uma relação que serve</p><p>como entrada para a operação encadeada. Agora, imagine que você tenha uma tabela com</p><p>milhões de linhas de dados e um conjunto de operações encadeadas sobre essa tabela. O</p><p>resultado da primeira operação gera outra relação de um milhão de linhas. Não faz muito</p><p>sentido você ficar avaliando toda a relação para avaliar a próxima operação. Assim, temos</p><p>duas formas básicas de avaliar um conjunto de operações particular: avaliação</p><p>materializada e avaliação em pipeline.</p><p>Avaliação Materializada - cada operação da álgebra é materializada em uma relação</p><p>temporária (se necessário) e utilizada como entrada para a próxima operação. Essa é</p><p>considerada a situação padrão no processamento de consultas.</p><p>Avaliação em Pipeline - uma sequência de operações algébricas é executada em um único</p><p>passo. Cada tupla gerada por uma operação é passada para a operação seguinte. Assim,</p><p>cada tupla passa por um canal (pipe) de operações e somente o resultado ao final do</p><p>pipeline é materializado (se necessário). Neste caso, evita-se a materialização de todos os</p><p>resultados intermediários no processamento de uma consulta.</p><p>Consulta sobre a relação Alunos. Retorna a lista dos candidatos e suas notas. (CandNota)</p><p>Consulta sobre CandNota retornando a lista dos candidatos aprovados</p><p>(AprovadoVaga)</p><p>Consulta sobre AprovadoVaga para retornar a média das notas do aprovados.</p><p>Thiago Rodrigues Cavalcanti</p><p>Aula 02</p><p>Perito Criminal - Curso Regular (Área TI) Banco de Dados</p><p>www.estrategiaconcursos.com.br</p><p>39471799600 - Naldira Luiza Vieria</p><p>38</p><p>321</p><p>Figura 2 - Avaliação materializada e em pipeline</p><p>Antes de seguir em frente a descrever cada uma das operações, gostaria de apresentar</p><p>para vocês a lista de operações consideradas fundamentais da álgebra relacional. Essas 6</p><p>operações são divididas em unárias e binárias. Vou apresentar apenas a lista na figura</p><p>abaixo, logo em seguida vamos tratar separadamente de cada uma destas operações.</p><p>Figura 3 - Operações fundamentais da álgebra relacional.</p><p>Sejam R, S e T relações, considere</p><p>as operações (R x S) ∩ T</p><p>Avaliação</p><p>materizalizada</p><p>t1</p>

Mais conteúdos dessa disciplina