Imagem de fundo

Um desenvolvedor está criando um script PL/SQL para automatizar a atualização de preços...

Um desenvolvedor está criando um script PL/SQL para automatizar a atualização de preços em uma tabela de produtos. A tabela Produtos contém as colunas ProdutoID, Nome, PrecoAtual e CategoriaID. Considerando a necessidade de aplicar um aumento de 10% apenas aos produtos da categoria 5, qual bloco de código PL/SQL abaixo realiza essa operação corretamente?


A

BEGIN

FOR produto IN (SELECT * FROM Produtos WHERE

CategoriaID = 5)

LOOP

UPDATE Produtos SET PrecoAtual = PrecoAtual * 1.1

WHERE ProdutoID = produto.ProdutoID;

END LOOP;

END;


B

UPDATE Produtos

SET PrecoAtual = PrecoAtual * 1.1

WHERE CategoriaID = 5;


C

DECLARE

cur_prod CURSOR FOR SELECT ProdutoID FROM

Produtos WHERE CategoriaID = 5;

BEGIN

FOR produto IN cur_prod

LOOP

UPDATE Produtos SET PrecoAtual = PrecoAtual *

1.10 WHERE ProdutoID = produto.ProdutoID;

END LOOP;

END;


D

BEGIN

UPDATE Produtos

SET PrecoAtual = SELECT PrecoAtual * 1.1

FROM Produtos WHERE CategoriaID = 5;

END;