Так что у меня есть сценарий создания триггера, который прекрасно работает в PHP MyAdmin в MySQL.
Но когда я пытаюсь запустить тот же скрипт SQL триггера в моем плагине. Он не может быть создан в MySQL, и самая раздражающая часть заключается в том, что WordPress не дает мне никаких ошибок вообще.
Я пытаюсь создать свой триггер через функцию активации WordPress на PHP в моем плагине.
Все остальные мои SQL-скрипты работают в этой функции активации. Это просто триггер, который не работает.
Я вполне уверен, что проблема заключается в том, как я запускаю сценарий в конце
Пример:
global $wpdb;
$comments = $wpdb->prefix . "comments";
$createTrigger =
"DROP TRIGGER IF EXISTS upd_trigger;
DELIMITER //
CREATE TRIGGER upd_trigger
AFTER INSERT
ON $comments
FOR EACH ROW
BEGIN
//some code
END //
DELIMITER ;";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
$wpdb->query( $createTrigger );
Я также попробовал следующие функции:
dbDelta ($ createTrigger);
mysqli_multi_query ($ wpdb-> dbh, $ createTrigger);
Так что я немного растерялся, почему это не работает.
Любая помощь высоко ценится.
Задача ещё не решена.
Других решений пока нет …