Boa noite galera..
Estou com um problema que já está me tirando do sério.
Desejo criar uma trigger que deverá inserir vários registros em uma tabela com base em uma outra, rsrs..
Em outras palavras é o seguinte: Tenho uma tabela que ao ser inserido um registro nela, ela vai consultar uma outra tabela, e se houver registro nessa consulta, a trigger deve inserir em uma terceira tabela um registro para cada registro presente na segunda.
Segue uma tentativa de construir o código:
DELIMITER $$
CREATE TRIGGER tgr_insertPriceProduct BEFORE INSERT
ON precoprodutos FOR EACH ROW
BEGIN
SELECT count(*) INTO @verificador FROM produtos WHERE idRepresentada = NEW.idRepresentada;
SET @i = 0;
WHILE (@i < @verificador) DO
BEGIN
SELECT idProduto,
preço INTO
@idProduto,
@preço FROM produto ORDER BY idProduto LIMITE @i,@i+1;
INSERT INTO valoresprecosproduto (valorPrecoProduto, idPrecoProduto, idproduto) VALUES (@preço+5, NEW.idPrecoProduto, @idProduto);
SET @i := @i+1;
END;
END$$
Pergunta
Makleyston
Boa noite galera..
Estou com um problema que já está me tirando do sério.
Desejo criar uma trigger que deverá inserir vários registros em uma tabela com base em uma outra, rsrs..
Em outras palavras é o seguinte: Tenho uma tabela que ao ser inserido um registro nela, ela vai consultar uma outra tabela, e se houver registro nessa consulta, a trigger deve inserir em uma terceira tabela um registro para cada registro presente na segunda.
Segue uma tentativa de construir o código:
DELIMITER $$
CREATE TRIGGER tgr_insertPriceProduct BEFORE INSERT
ON precoprodutos FOR EACH ROW
BEGIN
SELECT count(*) INTO @verificador FROM produtos WHERE idRepresentada = NEW.idRepresentada;
SET @i = 0;
WHILE (@i < @verificador) DO
BEGIN
SELECT idProduto,
preço INTO
@idProduto,
@preço FROM produto ORDER BY idProduto LIMITE @i,@i+1;
INSERT INTO valoresprecosproduto (valorPrecoProduto, idPrecoProduto, idproduto) VALUES (@preço+5, NEW.idPrecoProduto, @idProduto);
SET @i := @i+1;
END;
END$$
DELIMITER ;
Erro: Ocorre o erro de sintaxe.
Estou desde já grato.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.