Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

brainrj

Trigger

Recommended Posts

OLÁ PESSOAL... FAZ UM TEMPO QUE ESTOU SEM PROGRAMAR... ACHO QUE ENFERRUJEI UM POUCO... RS... EU SEI QUE JA FIZ ISSO ANTES... MAS NÃO LEMBRO O QUE FALTA...

 

EU PRECISO DE UMA TRIGGER QUE SEMPRE QUE EU CRIAR UMA LOJA, SEJA CRIADO UM ESTOQUE PRA ESSA LOJA... TENHO 3 TABELAS: LOJAS, PRODUTOS E ESTOQUE...

 

NA TABELA LOJA TENHO OS CAMPOS COD_LOJA E NOME, NA TABELA PRODUTOS TENHO OS CAMPOS COD_PRODUTO E NOME E NA TABELA ESTOQUE TENHO OS CAMPOS COD_LOJA, COD_PRODUTO E QTD (QUANTIDADE)

 

CRIEI A TRIGGER:

CREATE TRIGGER `LOJA_ESTOQUE` AFTER INSERT ON `lojas` FOR EACH ROW

BEGIN

SET @vLOJA = NEW.COD_LOJA;

INSERT INTO estoque (cod_produto, cod_loja)

values ((SELECT COD_PRODUTO FROM PRODUTOS),@vLOJA);

END;

 

ESTA DANDO ERRO PORQUE NO SELECT DA TABELA PRODUTOS RETORNA MAIS DE UM REGISTRO... SE EU USAR O LIMIT 1 FUNCIONA CERTINHO... O PROBLEMA E QUE TENHO VARIOS REGISTROS E PRECISO CRIAR O ESTOQUE DE TODOS PRA ESSA LOJA...

 

EU SEI QUE JA FIZ ISSO... MAS NÃO LEMBRO SE FOI NO INSERT DIRETO OU SE USEI WHILE OU FOR... ALGUEM TEM UM EXEMPLO PRA ME DAR??? JA PROCUREI E TUDO QUE ACHEI ESTAVA CONFUSO...

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu sou uma anta mesmo... tão simples... ja resolvi... tao simples... rs...

 

BEGIN

SET @vLOJA = NEW.COD_LOJA;

INSERT INTO estoque (cod_produto, cod_loja)

SELECT COD_PRODUTO, @vLOJA FROM PRODUTOS;

END

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.