Buscar

Utilizar rotinas de programação em Banco de Dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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’

Continue navegando