Prévia do material em texto
09/04/2020 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 1/5 Disciplina: Avaliação: Nota da Prova: Banco de Dados Avançado (ADS16) Avaliação Final (Objetiva) - Individual FLEX (peso.:3,00) 8,00 Legenda: Resposta Certa Sua Resposta Errada 1. Um sistema de banco de dados que atua com processamento de transações garante que, se a transação executar algumas atualizações e ocorrer alguma falha antes do término normal, estas não serão aplicadas ao banco de dados, ou seja, a atualização somente será executada na sua totalidade, caso contrário, será cancelada. Neste sentido, os comandos em SQL, usados para desfazer uma transação malsucedida e confirmar uma bem-sucedida, são, respectivamente: a) Grant e Revoke. b) Commit e Rollback. c) Rollback e Commit. d) Confirm e Cancel. 2. As triggers são programas armazenados que podem ser executados automaticamente, as quais são disparadas quando houver a ocorrência de algum evento associado a estas, ou seja, a trigger é consequência de uma ação. Sobre o bloco de comando, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A trigger será disparada após ocorrer a atualização no campo quantidade da tabela Estoque. ( ) A cláusula FOR EACH ROW, garante que a Trigger irá executar as ações em um conjunto de linhas. ( ) Se o banco de dados já possuir uma trigger com o nome consulta_estoque, será necessário primeiro excluí-la para realizar a inclusão desta. ( ) Os comandos PL/SQL do corpo da trigger serão executados antes dos dados da tabela serem alterados. ( ) O comando SELECT COUNT(*) INTO X FROM ENCOMENDAS, armazenará na variável X a quantidade de encomendas a ser realizada de determinada peça. Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - F - V. b) V - V - F - F - F. c) F - V - F - V - V. d) V - F - V - V - F. 09/04/2020 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 2/5 3. Na linguagem PL/SQL qualquer tipo de erro é tratado como uma exceção (exception), o que significa uma situação que, a princípio, não deveria ocorrer durante a execução seu programa. Existem dois tipos de exceção: ? Exceção de sistema (system exception): um erro definido pelo Oracle que é disparado automaticamente pela runtime engine da PL/SQL assim que ela detecta o problema. Exemplos: "duplicate value in index" e "no data found". ? Exceção Programada: exceção definida pelo programador e, portanto, específica da aplicação. Este tipo de exceção não é disparada automaticamente, mas apenas para situações indicadas pelo programador em seu código. Com relação aos conceitos do PLSQL, classifique as sentenças em V para as verdadeiras e F para as falsas: ( ) Todas os comandos e informações do PLSQL são terminados por um ponto e uma vírgula (. ,). ( ) As variáveis são declaradas dentro de um bloco DECLARE ou dentro do corpo do programa. ( ) Todos os tipos de loop devem ter implícito e bem definida a quantidade de vezes que deverão executar um comando. ( ) Os Cursores são usados para buscar as linhas de retorno de um select, todas de uma única vez. ( ) A exceção INVALID_NUMBER acontece quando se tenta inserir um campo texto em um número, ou quando se tentar alterar um campo numérico, atribuindo a ele um campo do tipo texto. Assinale a alternativa que apresenta a sequência CORRETA: FONTE: //www.devmedia.com.br/tratamento-de-excecoes-de-sistema-na-linguagem-pl-sql/26001. Acesso em: 6 mar. 2019. a) F - F - F - F - V. b) F - F - F -V - V. c) F - F - V - F - V. d) V - F - F - V - F. 4. O diagrama entidade-relacionamento trata-se de uma representação gráfica que visa a detalhar o modelo de negócio. O referido diagrama é composto por um conjunto de entidades e de relacionamentos, sendo este último responsável por estabelecer a relação que há entre as diversas entidades. Contudo, esta relação pode ocorrer de diversas formas, em que as ocorrências de uma entidade participam no mínimo e no máximo do relacionamento. Sobre o conceito responsável por indicar a quantidade de ocorrências nos relacionamentos, classifique V para as opções verdadeiras e F para as falsas: ( ) Herança. ( ) Normalização. ( ) Cardinalidade. ( ) Generalização. Assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - F. b) F - F - V - F. c) V - F - V - F. d) V - V - F - V. 09/04/2020 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 3/5 5. O Oracle predefiniu várias exceções que correspondem aos erros ORACLE mais comuns, as quais encontram-se disponíveis para o programa, não havendo, portanto, a necessidade de declará-las na seção declarativa como uma exceção definida pelo utilizador. Acerca das exceções predefinidas, classifique V para as sentenças verdadeiras e F para as falsas: ( ) INVALID_NUMBER trata-se de uma exceção lançada quando é feita uma tentativa de converter uma string de caracteres inválida em um número. ( ) DUP_VAL_ON_INDEX cujo código de erro é ORA-00001 basicamente é responsável por lançar uma exceção quando há a tentativa de tentar executar um INSERT ou UPDATE, o qual cria um valor duplicado em um campo com restrição de índice exclusivo. ( ) PROGRAM_ERROR trata-se de uma exceção gerada quando é constatado um erro de sintaxe no bloco de comandos desenvolvidos pelo programador, impedindo a execução de seu programa. ( ) VALUE_ERROR ocorre quando o valor a ser atribuído a um campo da tabela extrapola o tamanho especificado pelo programador. ( ) NO_DATA_FOUND ocorre sempre que houver algum erro na conversão de um campo do tipo Data. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - V - F. b) F - V - V - F - F. c) F - V - V - F - V. d) V - F - V - V - V. 6. Analise a estrutura da tabela FUNCIONÁRIO proposta a seguir: TAB_FUNC COD_FUNC - NUMBER(05) NOT NULL PRIMERY KEY NOM_FUNC - VARCHAR2(100) NOT NULL, SAL_FUNC - NUMBER(5,2) NOT NULL, VLR_COMIS - NUMBER(5,2) Imagine que você tenha que montar selects de busca na base de dados acima citada. Sobre os selects cujos comandos apresentariam erro de comando ou retorno ao serem executados no banco de dados, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Listar os dados de todos de todos os funcionários cujos nomes possuam a letra a, independente de ser no início, meio ou fim do texto : SELECT * FROM TAB_FUNC WHERE nom_func_LIKE '%a%'. ( ) Listar todos os dados dos funcionários de nome SIMONE ou ELTON: SELECT * FROM tab_func WHERE upper(nom_func) = ('SIMONE') OR upper(nom_func) = ('ELTON'). ( ) Listar o nome dos funcionários que têm salário entre 1800 e 3500 ordenado pelo salario: SELECT nom_func FROM tab_func WHERE val_sal BETWEEN (1800,3500) order by val_sal. ( ) Listar nome, salário e comissão do funcionário de código 351: SELECT nom_func, sal_func, val_comiss FROM tab_func WHERE cod_func in(351,380) Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - V - F b) F - F - F - V. c) F - V - V - F. d) V - F - F - V. 09/04/2020 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 4/5 7. Normalizaçã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. Acerca do processo de normalização, analise as sentenças a seguir: I- A normalização consegue armazenar os mesmos dados em menos tabelas. II- Na prática, comumente, utiliza-se somente três estágiosou formas de normalização. III- Na normalização, a eliminação dos atributos multivalorados ocorre durante a aplicação da primeira forma normal. IV- Tabelas com atributos multivalorados estão na primeira forma normal. Assinale a alternativa CORRETA: a) As sentenças I, II e IV estão corretas. b) As sentenças II e III estão corretas. c) Somente a sentença III está correta. d) As sentenças III e IV estão corretas. 8. PL/SQL é uma extensão da Linguagem de Consulta Estruturada (SQL) usada no Oracle. Ao contrário do SQL, o PL / SQL permite ao programador escrever código em um formato procedural. A forma completa de PL / SQL é "Extensões de Linguagem Procedural para SQL. Ele combina o poder de manipulação de dados do SQL com o poder de processamento da linguagem procedural para criar consultas SQL super poderosas. PL/SQL significa instruir o compilador 'o que fazer' através de SQL e 'como fazer' através de sua forma processual. Semelhante a outras linguagens de banco de dados, ele dá mais controle aos programadores pelo uso de loops, condições e conceitos orientados a objetos. No Oracle/PLSQL, a sintaxe correta para a retirada de privilégios em tabelas é: FONTE: https://www.guru99.com/introduction-pl-sql.html. Acesso em: 6 mar. 2019. a) On object from user delete privileges. b) Revoke on object from user privileges. c) Revoke privileges on object from user. d) Delete privileges on object from user. 9. Uma das partes mais importantes de um sistema de informação é o banco de dados, uma vez que este tem a responsabilidade de manter o bem mais valioso de uma organização, qual seja, a informação. Desta forma, o sucesso de um sistema de informação encontra-se altamente vinculado à elaboração de um projeto de banco de dados bem definido e que atenda ao objetivo esperado pelo cliente, cabendo ao projetista atentar-se às características do banco de dados. Acerca das principais características de um banco de dados, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A normalização em banco de dados relacionais tem por objetivo evitar a redundância de dados. ( ) Ao evidenciar-se um relacionamento N para N, será necessária a criação de uma tabela auxiliar. ( ) O desenvolvimento do modelo de dados físicos tem por finalidade descrever os dados como os usuários os percebem. ( ) A aplicação do comando GRANT visa conceder permissões específicas a um objeto (tabela, visão) para um ou mais usuários ou grupos de usuário. ( ) O comando DROP TABLE, usado para excluir um registro dos índices de manipulação de tabelas, é considerado como DML. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - F - F - F - V. b) V - F - V - V - F. c) F - V - V - F - V. d) V - V - F - V - F. 09/04/2020 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 5/5 10. Os gatilhos/triggers são semelhantes aos procedimentos armazenados. Um acionador armazenado no banco de dados pode incluir instruções SQL e PL / SQL ou Java para executar como uma unidade e pode invocar procedimentos armazenados. No entanto, procedimentos e gatilhos diferem na maneira como são chamados. Um procedimento é explicitamente executado por um usuário, aplicativo ou acionador. Os disparadores são acionados implicitamente pelo Oracle quando ocorre um evento de acionamento, independentemente de qual usuário está conectado ou de qual aplicativo está sendo usado. Analise a seguir o comando proposto para a criação de um gatilho/trigger em um banco de dados Oracle: CREATE TRIGGER AUDIT_PEDIDO AFTER UPDATE ON PEDIDO ..... Esse comando tem como consequência a criação de uma trigger chamado: FONTE: https://docs.oracle.com/cd/B19306_01/server.102/b14220/triggers.htm#i13313. Acesso em: 6 mar. 2019. a) AUDIT_PEDIDO, somente após uma atualização da estrutura da tabela PEDIDO. b) AUDIT_PEDIDO, somente após a iniciação geral do sistema. c) AUDIT_PEDIDO, somente após a atualização de algum registro da tabela PEDIDO. d) PEDIDO, somente após a atualização de algum registro da tabela AUDIT_PEDIDO. Prova finalizada com 8 acertos e 2 questões erradas.