Hola pues ya lo tengo solucionado, al final con varias querys, se podía hacer una única query pero así explico lo que hace cada una de ellas.
Requisitos
No haber borrado los mensajes del usuario cuando borramos al usuario por error.
Tenemos que saber el user_id del nunevo usuario
Código: Seleccionar todo
SELECT * FROM BaseDeDatos.phpbb_users where username='ponemos el nombre del usuario nuevo';
Mi resultado para el username='pepe' fue el user_id=55 estos son datos ficticios cada uno tiene unos diferentes.
Cambiamos los topics del usuario que se eliminó (PEPE, este es el usuario que se eliminó, pero como observáis está en mayúsculas)
Esto hace lo siguiente, cambia los
topic_poster al valor 55(user_id actual) cuando coincida con el usuario que fue eliminiado (PEPE)
Código: Seleccionar todo
update BaseDeDatos.phpbb_topics set topic_poster='55' where topic_first_poster_name='PEPE';
Esto hace lo siguiente, cambia los
topic_last_poster_id al valor 55 cuando coincida con el usuario PEPE
Código: Seleccionar todo
update BaseDeDatos.phpbb_topics set topic_last_poster_id='55' where topic_last_poster_name='PEPE';
_______________________________________________
Buscamos todas las respuesta de nuestro usuario
Código: Seleccionar todo
SELECT * FROM BaseDeDatos.phpbb_posts where post_username='PEPE';
Esto nos devuelve todos los mensajes del usuario que fue eliminado
el campo que tenemos que cambiar es
poster_id y poner en blanco
post_username
Código: Seleccionar todo
update BaseDeDatos.phpbb_posts set poster_id='55' where post_username='PEPE';
Código: Seleccionar todo
update BaseDeDatos.phpbb_posts set post_username='' where post_username='PEPE';
______________________________________________
Actualizamos el numero de mensajes que tiene el usuario
Para ello tenemos que saber cuentos mensajes tiene el usuario
Código: Seleccionar todo
SELECT * FROM BaseDeDatos.phpbb_posts where post_username='pepe';
Una vez sepamos los mensajes que tiene ejecutamos lo siguiente
Código: Seleccionar todo
update BaseDeDatos.phpbb_users set user_posts='numero de mensajes en total' where user_id='55';