Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Trigger não funcionando


crazySerk

Pergunta

Galera, montei essa trigger, ela é simples e não tem muita frescura, porém ela não está funcionando.

Compila sem erros.

BEGIN
/* declaro variavel para realizar controle */
DECLARE marca INT DEFAULT 0;
declare desc_ VARCHAR(60);
/* select para verificar se já existe algum registro para a marca selecionada da empresa */
select count(cod_marca) into marca from empresas_lojas where cod_marca = new.cod_marca AND
cod_empresa = new.cod_empresa;
/* select para recuperar o nome da marca que estamos inserindo */
select descricao into desc_ from marcas where cod_marca = new.cod_marca;
/* verifico se existe já um dado para marca escolhida, se marca for maior que 0 é porque
já foi feito um cadastro para marca selecionada, caso contrario apenas salvo essa nova marca */
IF(marca < 1) then
/* crio copia da marca para a empresa */
insert into empresas_marca (cod_marca,descricao,cod_empresa,cod_loja)
values
(new.cod_marca,desc_,new.cod_empresa,NEW.cod_loja);
end if;
END
Esqueci de algo nessa trigger?
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Vamos mudar um pouquinho.

BEGIN
 
/* declaro variavel para realizar controle */
DECLARE marca INT DEFAULT 0;
declare desc_ VARCHAR(60);

/* select para verificar se já existe algum registro para a marca selecionada da empresa */
  SET marca = (select count(cod_marca) from empresas_lojas where cod_marca = new.cod_marca AND
  cod_empresa = new.cod_empresa);
  
/* select para recuperar o nome da marca que estamos inserindo */
  SET desc_ = (select descricao from marcas where cod_marca = new.cod_marca);
  
  /* verifico se existe já um dado para marca escolhida, se marca for maior que 0 é porque 
  já foi feito um cadastro para marca selecionada, caso contrario apenas salvo essa nova marca */
  IF(marca < 1) then  
     /* crio copia da marca para a empresa */
     insert into empresas_marca (cod_marca, descricao, cod_empresa, cod_loja)
     values (new.cod_marca, desc_, new.cod_empresa, NEW.cod_loja);
  
  END IF;
END
Tenta agora.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...