Как в Kohana 3 обнаружить ошибки, допущенные во время запроса?
Вопрос
Я использую Кохану 3.
Я пишу запрос на обновление, и он работает для всего, кроме этого раздела.
Если я сделаю var_dump()
по итогам $db->execute()
Я получаю либо 1, либо 0, чтобы сказать, что это не удалось или нет.В этом примере происходит сбой (возвращается 0).
Как понять, какая ошибка происходит?Похоже, что в настоящее время молчание не работает.Я попробовал сделать echo mysql_error()
но это не сработало, как я ожидал, поскольку библиотека db Kohana 3 использует PDO, я почти уверен.
Как я могу выяснить, какая ошибка произошла?
Решение
Попробуйте выполнить это после вызова $db->execute()
:
echo Database::instance()->last_query
Другие советы
Внутри контроллера запустите профилировщик:
$this->profiler = new Profiler;
И затем после рендеринга View вы увидите список выполненных запросов.Попробуйте их, подключившись к базе данных или используя какое-нибудь программное обеспечение (например, MySQL Query Browser).
Удачи!
Он должен выдать исключение, если это ошибка SQL.Вы можете уловить это и повторить, чтобы получить ошибку.Видеть http://kerkness.ca/wiki/doku.php?id=crud_with_the_query_builder