Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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á.
Bom dia. Primeiramente te agradeço pela ajuda. Mas de tanto pesquisar e quebrar a cabeça, consegui fazer um trigger. Acho melhor, pq o meu sistema já tem muita função.
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 estrangeiraOu 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.
Tem esse script aqui:
http://wordpress.stackexchange.com/questions/75918/how-to-delete-all-post-and-attachments-of-a-user-when-i-delete-it