¿Los métodos de $wpdb
no aceptan una consulta MySQL CREATE TRIGGER
? Lo intenté con $wpdb->query( $sql_trigger )
una y otra vez sin éxito. Al lanzar la consulta de creación de activación en phpMyAdmin, se crea la activación, por lo que la consulta parece estar bien.
$sql_trigger = "DELIMITER //
CREATE TRIGGER triggerName
BEFORE UPDATE
ON 'table_name'
FOR EACH ROW
BEGIN
IF NEW.amount < 0 THEN
SET NEW.amount = 0;
ELSEIF NEW.amount > 100 THEN
SET NEW.amount = 100;
END IF;
END; //
DELIMITER ;
";
Sólo lea que EddyR usó mysqli para crear su disparador. enlace
¿No hay manera de usar las 'funciones nativas' de WP para crear un activador de mysql o estoy haciendo algo mal?
editar:
Separar la configuración de DELIMITER y la consulta como esta (o incluso cambiar el DELIMITER de //
a $$
) no cambió nada. sigue siendo el mismo problema.
$sql_before_trigger = "DELIMITER $$";
$sql_after_trigger = "DELIMITER ;";
$wpdb->query( $sql_before_trigger );
$wpdb->query( $sql_trigger );
$wpdb->query( $sql_after_trigger );