Baixe o app para aproveitar ainda mais
Prévia do material em texto
Você trabalha em uma empresa de cosméticos e o banco de dados da sua empresa possui aproximadamente 150 tabelas, entre elas a tabela Produto. Todos os dias, o sistema emite um relatório dos últimos produtos inseridos. Logo, uma consulta é realizada fazendo a ordenação dos produtos adicionados no dia de forma decrescente pela coluna data_criacao. No entanto, o sistema é utilizado por diversas filiais que rodam instâncias separadas do sistema e, uma possível alteração na tabela implicaria em uma alteração no código de cada uma dessas filiais. Como forma de facilitar a manutenção desse sistema, você poderia criar uma procedure para executar o seguinte comando SQL. SELECT nome, descricao, valor FROM produto WHERE DATE(data_criacao)=CURDATE() ORDER BY data_criacao DESC No comando, é realizado um SELECT pedindo os valores de nome, descrição e valor da tabela Produto. A ordenação é feita pela data de criação de forma descentende. Também é preciso limitar, com a cláusula WHERE, para retornar apenas os registros criados no dia (com CURDATE()). Sua missão é: 1 - Criar e descrever o comando de uma PROCEDURE que consulta todos os produtos da tabela ‘Produto’ ordenando pela data de criação em ordem decrescente. 2 - Descrever o comando para executar esta procedure. 3 - Modificar a procedure criada para pesquisar por produtos pela coluna nome. 4 - Descrever como ficaria o comando para executar a procedure do item 3, buscando pelo produto “batom”. Resposta padrão. Os comandos para a criação da procedure são: CREATE PROCEDURE sp_produto AS SELECT nome, descricao, valor FROM produto WHERE DATE(data_criacao)=CURDATE() ORDER BY data_criacao DESC Para executar o procedure será preciso: EXECUTE sp_produto Para criar procedure para pesquisa pelo nome: CREATE PROCEDURE sp_produto AS SELECT nome, descricao, valor FROM produto WHERE DATE(data_criacao)=CURDATE() AND nome LIKE '%' + @Nome + '%' ORDER BY data_criacao DESC Para executar procedure que busca pelo nome: EXECUTE sp_produto_nome ‘Batom’
Compartilhar