Как заставить Magento показывать всю ошибку SQL - PullRequest
2 голосов
/ 14 января 2011

Каждый раз, когда я программирую что-то на Magento, я получаю ошибку MySQL.Когда исключение отображается на экране, оно отображает только первые несколько символов запроса, который он пытался выполнить.

Есть ли способ заставить Magento отобразить весь запрос в трассировке стека?

Ответы [ 3 ]

3 голосов
/ 14 января 2011

Вы можете установить режим отладки в адаптере mysql (Varien_Db_Adapter_Pdo_Mysql)

/**
 * Write SQL debug data to file
 *
 * @var bool
 */
protected $_debug               = true;

Перейти в файл (var / debug / sql.txt), найти запрос get исключения и выполнить его в инструменте mysql.Проблема в том, что PDO возвращает только часть ошибки, полное сообщение об ошибке вы можете увидеть только при выполнении запроса в каком-либо инструменте.

2 голосов
/ 03 января 2013

Изменить Zend_Db_Statement_Pdo#_execute метод для включения $this->_stmt->queryString в выброшенное сообщение об исключении.

0 голосов
/ 08 октября 2013

Вот модуль, который также прекрасно печатает SQL:

https://github.com/kalenjordan/pretty-sql-exception

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