Синтаксическая ошибка с версией сервера MariaDB Involving - PullRequest
0 голосов
/ 27 мая 2019

Я почти год без проблем запускаю веб-сайт LiveSite, но за последние 1-2 недели получаю эту ошибку:

Ошибка: запрос не выполнен.

У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с 'rows, cols, informationmatio' в строке 14

Я отправил заявку в службу поддержки, но они помогли.

Я просмотрел свои настройки cPanel в phpMyAdmin на настройках базы данных, но на самом деле не знаю, где искать.

Я использую (то есть веб-хостинг, который я использую):

Сервер базы данных

  • Сервер: локальный хост через сокет UNIX

  • Тип сервера: MariaDB

  • Подключение к серверу: SSL не используется 

  • Версия сервера: 10.3.14-MariaDB-cll-lve - MariaDB Server

  • Версия протокола: 10

  • Пользователь: edmbeats @ localhost

  • Серверная кодировка: UTF-8 Unicode (utf8)

Веб-сервер

  • cpsrvd 11.78.0.24

  • Версия клиента базы данных: libmysql - 5.1.73

  • Расширение PHP: mysqli, curl, mbstring

  • Версия PHP: 7.2.7

PHPMYADMIN

  • Информация о версии: 4.8.3

Ничего особенного, нужно знать, куда идти, чтобы это исправить. Я ничего не менял на сайте в течение 8 месяцев, никаких обновлений, никаких изменений настроек. Я не уверен, что хостинговая компания обновила свои программы БД и стала причиной этого. Существует более новая версия LiveSite версии 2019, которая новее, чем версия 2017 года, которую я использую, но LiveSite не поддерживает автообновление для версии 2017 на платформе хостинга.

NA

1 Ответ

0 голосов
/ 28 мая 2019

https://mariadb.com/kb/en/library/reserved-words/ говорит, что ключевое слово ROWS было добавлено в качестве зарезервированного слова в MariaDB 10.2.4.

Вы можете использовать зарезервированные слова в своих инструкциях SQL, разделив их обратными галочками:

... `rows`, cols, informatio...

Таким образом, вам придется редактировать код приложения, который выполняет этот запрос, а это значит, что вам нужно точно определить, какой запрос вызвал ошибку.

Это хорошая практикачтобы избежать использования зарезервированных слов для вашей таблицы и идентификаторов столбцов.Если в коде LiveSite используется зарезервированное слово, они должны знать, что им необходимо это исправить, или же ставить обратные метки вокруг идентификаторов таблицы и столбца, которые конфликтуют с зарезервированными словами.Я предлагаю вам связаться с ними с запросом поддержки.

...