Запрос выполняется в phpmyadmin, но не в PHP Wordpress - PullRequest
0 голосов
/ 07 января 2020

У меня есть этот запрос, который выполняется на PHPMYADMIN, но не в PHP коде в Wordpress:

DROP PROCEDURE IF EXISTS LoopDemo; 
CREATE FUNCTION IF NOT EXISTS SPLIT_STR(x VARCHAR(255), delim VARCHAR(12), p INT) 
RETURNS VARCHAR(255) RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, p), LENGTH(SUBSTRING_INDEX(x, delim, p -1)) + 1), delim, '');

Это PHP:

$create_func = $wpdb->prepare("DROP PROCEDURE IF EXISTS LoopDemo; CREATE FUNCTION IF NOT EXISTS SPLIT_STR(x VARCHAR(255), delim VARCHAR(12), p INT) RETURNS VARCHAR(255) RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, p), LENGTH(SUBSTRING_INDEX(x, delim, p -1)) + 1), delim, '');"); 
$saved = $wpdb->get_results($create_func);

Это ошибка, которая выброшено:

В вашем синтаксисе SQL произошла ошибка; проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с 'СОЗДАЙТЕ ФУНКЦИЮ, ЕСЛИ НЕ СУЩЕСТВУЕТ SPLIT_STR (x VARCHAR (255), delim VARCHAR (12), p INT' в строке 1] ПРОЦЕДУРА УДАЛЕНИЯ, ЕСЛИ СУЩЕСТВУЕТ LoopDemo; СОЗДАЙТЕ ФУНКЦИЮ, ЕСЛИ НЕ СУЩЕСТВУЕТ SPLIT_STR (x VARCHAR (255), delim VARCHAR (12), p INT) ВОЗВРАЩАЕТСЯ VARCHAR (255), ЗАМЕНИТЕ ВОЗВРАТ (SUBSTRING_INDEX (x, delim, p), LENGTH (SIMS_SINSING (SUBST) -1)) + 1), разделитель, '');

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...