Сценарий: у меня есть таблица в mariaDB. Это называется «страницы». В нем всего три столбца и несколько записей для целей тестирования.
Проблема: я пытаюсь создать хороший оператор PREPARE в SQL. У меня не получилось, поэтому я получил следующий «простой» код.
PREPARE stmt from 'SELECT * FROM `pages`;';
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
Он выполняется без ошибок, но не показывает ни одной строки.
Что мне здесь не хватает?
Если вы спросите, почему я использую оператор подготовки для такого простого запроса: это просто для поиска ошибки. Окончательный запрос будет более сложным с переменными и т.д.
Заранее спасибо!
P.S.: Может быть двойным Выберите * для оператора подготовки mysql, ничего не перечисляющего а может и нет.
Дополнительная информация Я запускаю код как прямой SQL-запрос в Sequel Pro.
ПРАВИЛЬНЫЙ ОТВЕТ
У Йоакима Даниэльсона была правильная догадка.
prepare stmt from 'SELECT * FROM `pages`;'; execute stmt;
DEALLOCATE PREPARE stmt;
Это работает в Sequel Pro. НО Я настоятельно рекомендую не использовать командную строку Sequel Pros. Другие баги появлялись один за другим. Не так в CLI mysql. Лучше используйте командную строку вашей ОС.