Prévia do material em texto
Banco de Dados Avançado - Avaliação II – Individual 1Normalização é um processo a partir do qual se aplicam regras a todas as tabelas do banco de dados com o objetivo de evitar falhas no projeto, como redundância de dados e mistura de diferentes assuntos numa mesma tabela. Ao projetar um banco de dados, se temos um modelo de entidades e relacionamentos e a partir dele construirmos o modelo relacional seguindo as regras de transformação corretamente, o modelo relacional resultante estará, provavelmente, normalizado. Mas, nem sempre os modelos que nos deparamos são implementados dessa forma e, quando isso acontece, o suporte ao banco de dados é dificultado. Em ambos os casos, é necessário aplicar as técnicas de normalização, ou para normalizar (segundo caso citado), ou apenas para validar o esquema criado (primeiro caso citado). Aplicando as regras descritas a seguir, é possível garantir um banco de dados mais íntegro, sem redundâncias e inconsistências. Sobre a modelagem de dados em uma base de dados relacional, analise as sentenças a seguir: I- Normalização é um processo que valida os atributos de uma entidade com o objetivo de evitar erros de redundância e integridade quando ocorrem operações de inclusão, exclusão e alteração de tuplas exclusivas. II- Uma das condições para uma relação P estar na 3FN (terceira forma normal) é que todos os seus atributos "não chave" devem ser dependentes da chave primária. III- Uma relação P está na 2FN (segunda forma normal) se e somente se ela não atender à 1FN (primeira forma normal). IV- Uma relação P está na 1FN (primeira forma normal) se ela não tiver chave estrangeira. Assinale a alternativa CORRETA: FONTE: http://www.dsc.ufcg.edu.br/pet/jornal/maio2011/materias/recapitulando.html. Acesso em: 6 mar. 2019. A As sentenças III e IV estão corretas. B As sentenças I e II estão corretas. C As sentenças II e IV estão corretas. D As sentenças I e III estão corretas. 2A linguagem SQL (Linguagem de consulta estruturada) tem a função de manipular as informações da base de dados (insert, update, delete) e alterar o dicionário de dados (através dos comandos DDL: create, drop, alter etc). Todas as operações executadas pelo SGBD utilizam comandos da linguagem SQL para executar as mais diversas operações. Com relação à linguagem SQL, analise as sentenças a seguir: I- Possui um número extenso de comandos. II- É utilizada nas redes cliente-servidor e nos bancos de dados relacionais. III- Possui uma linguagem de controle de dados (DCL). IV- Possui uma linguagem de manipulação de dados (DML), e é uma linguagem estruturada de consulta. Assinale a alternativa CORRETA: A As sentenças II, III e IV estão corretas. B As sentenças I, II e III estão corretas. C As sentenças I e III estão corretas. D As sentenças I e IV estão corretas. 3Oracle é basicamente uma ferramenta cliente/servidor para a gestão de Bases de Dados. Para a criação de tabelas, é imprescindível entender os tipos de dados e os campos que o Oracle pode ter. Sobre o Oracle, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O tipo de dado long armazena caracteres com tamanhos variados, que podem chegar até 2 gigabytes. ( ) O tipo de dado long raw suporta somente informações do tipo texto, com tamanho máximo de 2.800 caracteres. ( ) O tipo de dado date armazena data e hora,sendo possível incluir o século, ano, mês, dia, hora, minuto e segundos. ( ) O tipo de dado number também pode ser utilizado para armazenar datas Assinale a alternativa que apresenta a sequência CORRETA: A V - V - V - F. B V - F - F - F. C V - F - V - F. D F - V - F - V. 4SQL é um programa simples para emitir comandos sql para um banco de dados, é cliente servidor. É considerado um aplicativo padrão para acessar e manipular informações no banco de dados ORACLE. Pode ser considerado também como um programa de computador que usa linha de comando para executar ações em SQL e PLSQL em uma base de dados ORACLE. É considerado uma interface padrão para desenvolvedores e analistas de sistemas. A estrutura básica de uma expressão SQL consiste em três cláusulas: SELECT, FROM e WHERE. Com relação às essas cláusulas, analise as sentenças a seguir: I- A cláusula SELECT corresponde à união do resulto dos dados das tabelas da cláusula from, com exceção da última tabela listada. II- A cláusula FROM lista as tabelas que estarão relacionadas na validação do comando e na busca das informações na base de dados. III- A cláusula WHERE corresponde aos relacionamentos entre as tabelas listadas e também aos filtros aplicados na busca dos dados. Assinale a alternativa CORRETA: A Somente a sentença I está correta. B As sentenças I e II estão corretas. C As sentenças II e III estão corretas. D As sentenças I e III estão corretas. 5A linguagem SQL é composta por várias funções alfanuméricas, que permitem ao usuário manipular os textos e os números que retornam das consultas realizadas. Diante disso, considerado a tabela de Alunos, analise as sentenças a seguir: I- A consulta select substr(NOME,5,8) from ALUNOS where MATRICULA= 252322, recupera uma parte do nome do aluno, neste caso, Ana, excluindo parte da string que está entre a posição 5 até 8. II- A consulta select upper(NOME) from ALUNOS, recuperará todos os registros e exibirá todos os caracteres do campo nome em maiúsculo. III- A consulta select ltrim(NOME, 'a') from ALUNOS where ENDERECO like '%Blumenau', retornará como resultado “na Lima”. IV- A consulta select length(ENDERECO) from ALUNOS where NOME like 'Ana%', retornará como resultado o valor 12. Agora, assinale a alternativa CORRETA: A Somente a sentença II está correta. B As sentenças II e IV estão corretas. C As sentenças I, II e III estão corretas. D As sentenças I e IV estão corretas. 6A aplicação dos operadores aritméticos, lógicos e de comparação em consultas SQL, permite a realização de diversas tarefas, tais como: somar, agrupar, comparar valores do banco de dados com constantes e variáveis, entre outras. Tais operadores auxiliam na construção das consultas, permitindo a comparação de valores e estabelecendo diferenças entre um resultado e outro. Sobre a tabela e o comando SQL, assinale a alternativa CORRETA: A A consulta retornará todos os campos da tabela funcionários que contenham o substring “Getúlio” no campo endereço. B A consulta retornará o primeiro nome da tabela funcionários que contém o substring “Getúlio” no campo endereço. C A consulta retornará todos os endereços da tabela funcionários, exceto os que contenham o substring “Getúlio” no campo endereço. D A consulta retornará todos os nomes da tabela funcionários que contenham o substring “Getúlio” no campo endereço. Revisar Conteúdo do Livro 7As constraints (restrições) visam a manter os dados do usuário restritos, e assim evitam que dados inválidos sejam inseridos no banco de dados, sendo que a mera definição do tipo de dados para uma coluna pode ser considerada, por si só, como uma constraint. Acerca das constraints aplicáveis ao Banco de Dados Oracle, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A constraint do tipo CHECK visa a definir uma condição que deverá ser satisfeita para a inserção/alteração de um valor numa coluna específica. ( ) Uma tabela somente poderá ter uma restrição do tipo Foreign Key, haja vista que esta restrição estabelece um link entre duas tabelas distintas. ( ) Ao definir uma coluna da tabela com a restrição Primary Key, a restrição Not Null será aplicada implicitamente. ( ) A restrição UNIQUE KEY visa a garantir que o conteúdo de uma coluna ou conjunto de colunas assuma um valor diferente para cada linha, sendo que somente poderá existir uma única restrição deste tipo por tabela. ( ) O comando ALTER TABLE pessoas ADD CONSTRAINT ck_sexo CHECK (sex_pessoain ‘M’, ‘F’)); alterará a tabela pessoas, adicionando uma restrição, a fim de garantir que somente os caracteres M ou F sejam inseridos no campo sex_pessoa. Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - F - V - V. B F - V - V - F - F. C V - F - V - V - F. D V - F - V - F - V. 8Em muitos sistemas informatizados é necessário armazenar informações em bancos de dados, podemos constatar isso observando que nas últimas décadas o banco de dados se tornou o coração de muitos sistemas. A informação é muitas vezes a coisa mais valiosa das empresas, mantê-las e poder acessá-las sempre que necessário é primordial para tomar decisões importantes. Mas controlar o acesso a essas informações também é importantíssimo. Já pensou se elas caíssem em mãos erradas? E a perda de informações? Já imaginou se estragasse o HD do servidor onde está o banco de dados? Backup é uma forma de garantir que informações não serão perdidas. Enfim, já deu para perceber que a gerência de um banco de dados não é uma coisa a se deixar de lado, pois uma empresa pode depender dele, ou seja, pode ajudar a empresa a ter sucesso, mas também pode levá-la ao fracasso. Para garantir a consistência dos dados, controlar o acesso, manter os dados seguros, fornecer meios de acesso aos dados, [...] foram criados os Sistemas de Gerenciamento de Bancos de Dados, ou SGBD (DBMS em inglês DataBase Management System). Quando existe uma falha no processamento das transações o SGBD, busca, através de recursos específicos restaurar o banco de dados até o momento anterior a falha. Para isso, o sistema precisa armazenar informações sobre todas as mudanças que ocorreram na base de dados e alteraram os atributos das tabelas ou objetos como procedures, funções, triggers etc. Sobre os locais que armazenam essas mudanças, analise as sentenças a seguir: I- Registro dos comandos DDL. II- Arquivo de log do banco de dados. III- Tabelas da base de dados. IV- Nuvem onde os dados estão armazenados. Assinale a alternativa CORRETA: FONTE: https://dicasdeprogramacao.com.br/o-que-e-um-sgbd/. Acesso em: 6 mar. 2019. A As sentenças II e III estão corretas. B Somente a sentença II está correta. C Somente a sentença III está correta. D As sentenças II , III e IV estão corretas. 9O banco de dados de uma empresa contém uma grande quantidade de dados e geralmente um grande número de usuários. A maioria destes usuários não tem a necessidade de acessar todos os dados. Assim, permitir o acesso irrestrito a todos os dados pode ser indesejável e o SGBD deve prover mecanismos para controlar este acesso. Através do controle de acesso discricionário (catálogos), o banco de dados mantém um registro dos seus objetos e dos privilégios que cada usuário ou grupo de usuários possui sobre os mesmos. Sobre os comandos que permitem a um usuário conceder ou revogar privilégios a outros usuários, classifique V para as opções verdadeiras e F para as falsas: ( ) INSERT PRIVILEGES e DELETE PRIVILEGES. ( ) CREATE ROLE e DROP ROLE. ( ) CONCEDE e EXCLUDE. ( ) GRANT e REVOKE. Assinale a alternativa que apresenta a sequência CORRETA: FONTE: Disponível em: . Acesso em: 4 abr. 2017. A V - F - V - V. B F - V - F - F. C F - F - F - V. D V - V - V - V. 10Um banco de dados é uma aplicação que lhe permite armazenar e obter de volta dados com eficiência. O que o torna relacional é a maneira como os dados são armazenados e organizados no banco de dados. Quando falamos em banco de dados, aqui, nos referimos a um banco de dados relacional - RDBMS Relational Database Management System. Em um banco de dados relacional, todos os dados são guardados em tabelas. Estas têm uma estrutura que se repete a cada linha, como você pode observar em uma planilha. São os relacionamentos entre as tabelas que as tornam relacionais. Sobre os comandos/funções de agrupamento que podem ser utilizadas em cláusulas SELECT de um comando SQL, assinale a alternativa CORRETA: FONTE: https://elias.praciano.com/2013/09/o-que-e-um-banco-de-dados-relacional/. Acesso em: 6 mar. 2019. A MAX, MIN, COUNT B DROP, ALTER, MAX C SUM, LIKE, BETWEEN D COUNT, MAX, DROP