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