Hola,
Vengo de un hilo anterior, pero creo que es conveniente hacer otro con el problema ahora bien explicado.
Necesito buscar una alternativa que lance un SP desde un Trigger, ya que como algunos sabéis esto no esta permitido en Mysql.
Este es el codigo que tenia dentro del trigger:
Código:
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);
SET @username = CONCAT('USE ',@bd,' ');
PREPARE stmt1 FROM @username;
EXECUTE stmt1;
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
Decidi meterlo en un SP y llamarlo desde el Trigger, pero no funciona como ya sabeis.
Entonces... ¿Cual es el camino a seguir?
Necesito que se lance ese codigo cada vez que se realice un update en una tabla. Ademas, mas adelante necesito añadir mas IF, ya que necesito hacer varias comprobaciones, y segun que campo se modifice hacer una cosa u otra.
Otra pregunta. Los SP, no se pueden usar como los trigger no? y decirles que se ejecuten cuando se actulice algun campo?
Si esto es asi, que caminos me quedan?