giovanini 0 Denunciar post Postado Maio 21, 2013 Boa noite pessoal. Estou com uma dúvida aqui. Tenho um banco com as tabelas associado, dependente, endereco e participa_grupo. Associado possui chaves estrangeiras com endereco e as outras classes tem chaves estrangeiras com a associado. Fiz um trigger before delete on associado for each row, pra que antes de apagar uma linha do associado, apague tbm nas outras tableas.. não sei se isso que quero fazer dá certo com o uso do trigger, por isso peço a ajuda de vocês. Segue o trigger que fiz: DELIMITER $ CREATE TRIGGER `t_bef_del_Associado` BEFORE DELETE ON ASSOCIADO FOR EACH ROW BEGIN DELETE FROM DEPENDENTE WHERE cpf_dependente = old.cpf_associado; DELETE FROM ENDERECO WHERE (cep = old.Acep AND rua = old.Arua AND numero = old.Anumero AND complemento = old.Acomplemento); DELETE FROM PARTICIPA_GRUPO WHERE cpf_pg = old.cpf_associado; END; $ Quando tento dar o comando, delete from ASSOCIADO where cpf_associado='231.512.512-70';recebo uma mensagem de erro de que não é possível apagar por causa das chaves estrangeiras... creio eu que meu trigger não está funcionando, certo? Queria a ajuda de vocês sobre isso. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Maio 21, 2013 http://www.devmedia.com.br/forum/como-deletar-registros-utilizando-o-cascade/30575 Compartilhar este post Link para o post Compartilhar em outros sites
giovanini 0 Denunciar post Postado Maio 21, 2013 Oi Motta, obrigado pelo tempo em me responder... Tenho conhecimento do "ON DELETE CASCADE" para as tabelas mas realmente não tinha pensado que o trigger que fiz era basicamente a mesma coisa que isso. A verdade é que preciso fazer um trigger como exemplo de uso no meu BD para uma disciplina na faculdade e havia pensado nesse, mas com o que você apontou não tem porque de faze-lo. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites