Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação 1) Em um banco de dados de uma loja virtual existe uma tabela PRODUTOS. Toda vez que um determinado produto estiver com menos de 5 unidades em estoque, é desejado que seja inserido na tabela COMPRAS_REPOSICAO um registro com a descrição do produto para que o dono da loja possa providenciar o aumento do estoque. Qual o melhor tipo de trigger para criar na tabela PRODUTOS para atender esta situação, levando em conta a escolha de somente um tipo de trigger? BEFORE DELETE (alternativa incorreta) AFTER DELETE (alternativa incorreta) AFTER INSERT (alternativa incorreta) BEFORE UPDATE (alternativa incorreta) BEFORE INSERT (alternativa incorreta) AFTER UPDATE (alternativa correta) Resposta correta! Para que um aviso de produto no final de estoque seja implementado corretamente, é necessário realizar a rotina SQL que faça essa validação execute sempre que a tabela PRODUTOS seja alterada. Assim, sempre que um item sair do estoque, a rotina em questão irá procurar por produtos com menos de 5 itens no estoque, por exemplo. 2) Em um banco de dados de uma loja virtual os usuários serão gerenciados pela tabela USUARIOS, e terão o seu e-mail utilizado como chave primária desta tabela. Se fosse para validar via trigger os dados enviados ao banco para evitar usuários com e-mails duplicados, em qual momento esta validação deveria ser realizada, levando em conta a escolha de somente um tipo de trigger? BEFORE UPDATE (alternativa incorreta) AFTER INSERT (alternativa incorreta) AFTER UPDATE (alternativa incorreta) BEFORE DELETE (alternativa incorreta) BEFORE INSERT (alternativa correta) AFTER DELETE (alternativa incorreta) Resposta correta! Para evitar que dois registros possuam o mesmo e-mail, é importante saber que o próprio banco de dados impedeeste tipo de situação se a coluna em questão for chave primária, gerando um erro neste caso. Mas se for necessárioimplementar esse tipo de validação utilizando triggers, é antes do registro ser inserido que a validação deveocorrer (BEFORE INSERT). 3) Sobre triggers é correto afirmar: * Marque todas as alternativas que respondem o enunciado da questão É um mecanismo de disparo de códigos SQL baseado em invocações direta do usuário. (alternativa incorreta) Triggers devem ser utilizados apenas em bancos de dados de grande porte. (alternativa incorreta) É um recurso que permite executar códigos SQL a partir de determinadas situações ou eventos. (alternativa correta) Um trigger pode executar um código SQL a partir de um registro que foi incluído em determinada tabela. (alternativa correta) Resposta correta! Triggers devem ser utilizados em bancos de dados de qualquer tamanho que demandem suas funcionalidades. Seus benefícios não estão ligados ao tamanho do banco. Triggers são iniciadas a partir de eventos ocorridos no banco de dados, e não a partir de invocações de usuários. 4) Sobre stored procedures é correto afirmar: * Marque todas as alternativas que respondem o enunciado da questão Aumentam o tráfego de dados e o número de conexões com o banco se comparado com o mesmo código sendo invocado a partir de uma linguagem de programação. (alternativa incorreta) São blocos de código SQL armazenados no banco de dados. (alternativa correta) Facilita o compartilhamento de rotinas do banco de dados entre diferentes aplicações. (alternativa correta) Uma de suas desvantagens é que a manutenção do código fica descentralizada. (alternativa incorreta) Resposta correta! A manutenção de código é centralizada no caso das Stored Procedures, e não descentralizada. Isso facilita a manutenção e também o compartilhamento destes recursos.O uso de Stored Procedures reduz o tráfego de rede e as conexões com o banco de dados, pois ao invés de diversas conexões e comandos serem enviados ao banco para serem realizados por uma linguagem de programação, apenas a instrução de invocação da Stored Procedure é enviada.
Compartilhar