Podrias ver que me falta, no consigo hacer que funcione.
Código:
  
Pues me da error en la linea de use @bd.
BEGIN
IF NEW.Jname != OLD.Jname THEN
SET @cont = 1;
SET @bds = ('aux,prugeok,pruebas');
    WHILE @cont <= 3 DO 
    
    	    SET @bd = (SELECT CASE 
                WHEN @bds REGEXP CONCAT('((,).*){',@cont,'}') 
                THEN SUBSTRING_INDEX(SUBSTRING_INDEX(@bds,',',@cont+1),',',-1) 
                ELSE NULL
            END);
            
           use @bd;
    	    
            SET @nombre =  (SELECT name FROM j25_users WHERE name = OLD.Jname);
            IF @nombre != NULL THEN
            	UPDATE j25_users SET name = NEW.Jname WHERE name = OLD.Jname;
            END IF;
            SET @cont = @cont + 1; 
    END WHILE; 
END IF;
END
He comprobado lo que se guarda en @bd con un select, y funciona bien.
Pero nada. He probado tambien usando @bd.tabla.campo en las consultas siguiente, pero igualmente me falla.
Haber si me podeis ayudar!!!
Gracias!
 
 








