• Resolvido greg_kaippert

    (@greg_kaippert)


    Bom dia galera. Estou querendo excluir um usuário, e outras tabelas tem uma chave estrangeira da tabela usuário. Ou seja, quando excluir um usuário, quero que todos os dados relacionados aquele usuário seja deletado também. Já tentei fazer por um programa de Modelagem de dados, mas não consegui. Alguem poderia dar uma ajuda aí ? Agradeço desde já.

Visualizando 1 resposta (de um total de 1)
  • Criador do tópico greg_kaippert

    (@greg_kaippert)

    Bom dia. De tanto pesquisar e quebrar a cabeça, consegui fazer um trigger.

    Query abaixo:

    DELIMITER $$
    DROP TRIGGER IF EXISTS delete_user$$ // um nome qualquer pro trigger, escolhi delete_user

    CREATE TRIGGER delete_user AFTER DELETE on wp_users // tabela wp_users que contem a chave primaria
    FOR EACH ROW
    BEGIN
    DELETE FROM cad_grupo WHERE id=OLD.iD; // tabela cad_grupo que contem a chave estrangeira
    DELETE FROM cad_gestores WHERE id=OLD.iD; // tabela cad_gestores que contem a chave estrangeira
    DELETE FROM cad_tecnicos WHERE id=OLD.iD; // tabela cad_tecnicos que contem a chave estrangeira
    DELETE FROM cad_clientes WHERE id=OLD.iD; // tabela cad_clientes que contem a chave estrangeira
    DELETE FROM cad_instal WHERE id=OLD.iD; // tabela cad_instal que contem a chave estrangeira
    END$$
    DELIMITER ; <!– Fim da query aqui –>

    Ou seja, na tabela wp_users, há um campo ID que é a chave primária, e nas outras tabelas, há um campo também ID que é chave estrangeira, é por esses campos que eu faço o relacionamento. Então eu comparo os ID’s e faço a exclusão.

Visualizando 1 resposta (de um total de 1)
  • O tópico ‘Excluir usuário e tabelas relacionadas’ está fechado para novas respostas.