Я получаю сообщение об ошибке при запросе этого оператора select.
$comments = dbgetvar("SELECT SUM(CASE WHEN c.approve = '1' AND c.spam = '0' THEN 1 ELSE 0 END) AS approved,
SUM(CASE WHEN c.approve = '0' AND c.spam = '0' THEN 1 ELSE 0 END) AS pending,
SUM(CASE WHEN c.spam = '1' THEN 1 ELSE 0 END) AS spam,
COUNT(*) AS count
FROM COMMENTS c");
приведенный выше код отлично работает на моей локальной машине с использованием сервера WAMP. но когда я размещаю его на своем сервере с помощью cpanel, он дает следующую ошибку.
Примечание: dbget: Таблица 'bhatkaln_test.COMMENTS' не существует в SELECT SUM (CASE WHEN c.approve = '1' И c.spam = '0' THEN 1 ELSE 0 END) Утверждено AS, SUM (CASE КОГДА c.approve = '0' AND c.spam = '0' THEN 1 ELSE 0 END) Ожидается, SUM (CASE КОГДА c.spam = '1' THEN 1 ELSE 0 END) AS spam, COUNT (*) AS count FROM КОММЕНТАРИИ c в /home/bhatkaln/public _html/test/admin-login/models/validation.php по строке 154
что означает вышеуказанная ошибка? в базе данных существует таблица комментариев.
Вы тестируете свой сервер в Windows, где имена таблиц не чувствительны к регистру, поскольку в конечном итоге они относятся к файлам.
При загрузке на сервер на базе Linux файловая система имеет чувствительность к регистру. Это не работает, потому что вы указываете COMMENTS
, но имя таблицы, по-видимому, равно COMMENTS
.
Подробнее см. "Чувствительность идентификатора" в руководстве по MySQL.
bhatkaln_test
данныхbhatkaln_test
на вашем сервере?