Intereting Posts
Как скопировать существующий (настраиваемый тематический) сайт в новый домен ограничьте слова в сообщении и добавьте дополнительную ссылку Каждое сообщение отображается дважды в моем пользовательском запросе …? Страницы, не использующие постоянную ссылку Пользовательский шаблон типа Post Post не вызывается Как использовать «if field exists» с помощью $ curauth? Как создать виджет для встраивания кода для формы регистрации, чтобы форма регистрации появлялась на каждой странице? Что необходимо для защиты плагина WP от попыток прямого доступа к файлу? Wp_customize_image_control Использовать Добавить Media Создать таблицу в пользовательском плагине при ее активации? Создание сайта только для IE (как мобильный сайт) если пользователь имеет определенную роль, тогда отобразите изображение Получить категорию slug и отобразить ее на query_post Мне действительно нужна запись в классе? Различные шаблоны для подкатегорий

dbDelta использование внешнего ключа, не работающего над обновлением

Я использую FOREIGN KEY с dbDelta при активации плагина (register_activation_hook ()). Он отлично работает при создании таблицы в первый раз, но выводит ошибку при обновлении таблицы (таблица уже присутствует, но в таблице необходимо внести изменения). Какие-либо предложения?

if(GLOBAL_PLUGIN_VERION != get_option("GLOBAL_PLUGIN_VERSION")){ $sql = "CREATE TABLE `".TEST_TABLE."` ( `id` INT( 11 ) NOT NULL AUTO_INCREMENT, `title` VARCHAR( 100 ) NOT NULL, `description` TEXT DEFAULT NULL, `location_id` INT( 11 ) NOT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`location_id`) REFERENCES `".TEST2_TABLE."` (`id`) );"; } 

Ошибка:

Замечание PHP: Неопределенное смещение: 1 в wp-admin / upgrade.php в строке 1568

Ошибка базы данных WordPress У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с FOREIGN KEY ( location_id ). ССЫЛКИ test2 ( id ) 'в строке 1 для запроса ALTER TABLE test ADD COLUMN FOREIGN KEY ( location_id ) ССЫЛКИ test2 ( id ) made от …

Ошибка базы данных WordPress Несколько первичных ключей, определенных для запроса ALTER TABLE TEST ADD PRIMARY KEY ( id ), сделанные …

Solutions Collecting From Web of "dbDelta использование внешнего ключа, не работающего над обновлением"

Из Кодекса :

Обратите внимание, что функция dbDelta довольно сложная. Например: […]

  • Вы не должны использовать какие-либо апострофы или обратные ссылки вокруг имен полей.
 $sql = "CREATE TABLE ".TEST_TABLE." ( id INT( 11 ) NOT NULL AUTO_INCREMENT, title VARCHAR( 100 ) NOT NULL, description TEXT DEFAULT NULL, location_id INT( 11 ) NOT NULL, PRIMARY KEY (id), FOREIGN KEY (location_id) REFERENCES ".TEST2_TABLE." (id) );";