He comprobado que desde el panel de moderador o desde el de admin no se puede hacer gran cosa, eliminar en tandas de 25 o eliminar todos los hilos de un subforo (pero al hacer esto el foro se bloquea y me tienen que reparar la tabla los del hosting para que vuelva a funcionar todo correctamente).
Por eso he estado echando un ojo para eliminarlo mediante SQL.
Por lo que he visto tendria que hacer un borrado en las tablas:
- posts (Mensajes)
- topics (titulos de mensajes)
- topics_posted (numero de mensajes)
La cosa es que me gustaria saber como borrar registros relacionados con las otras 2 tablas, es decir borrarlo a la vez de las 3 tablas segun su relacion.
Una vez conseguido esto sera hacer un LIMIT para que borre de 30 en 30 y que no sature el servidor y lo cuelgue.
de MySQL no se mucho, no se si las JOIN funcionan en MySQL, a ver si podeis echarme una mano y decirme si esto vale:
Código: Seleccionar todo
DELETE FROM `phpbb_posts` AS P
JOIN `phpbb_topics` AS T ON T.forum_id = P.forum_id
JOIN `phpbb_topics_posted` AS TP ON TP.topic_id = T.topic_id
WHERE P.forum_id = 61
LIMIT 30
Código: Seleccionar todo
SELECT * FROM `phpbb_posts` AS P
JOIN `phpbb_topics` AS T ON T.forum_id = P.forum_id
JOIN `phpbb_topics_posted` AS TP ON TP.topic_id = T.topic_id
WHERE P.forum_id = 61
LIMIT 30