В Kohana 3, как вы обнаруживаете ошибки, допущенные во время запроса? - PullRequest
1 голос
/ 11 февраля 2010

Я использую Kohana 3.

Я пишу запрос на обновление, и он работает для всего, кроме этого одного раздела.

Если я сделаю var_dump() по результатам $db->execute(), я получу 1 или 0, чтобы сказать, что это не удалось или нет. В этом примере происходит сбой (возвращается 0).

Как я могу выяснить, какая ошибка происходит? Это оправдывает, кажется, молчаливый провал в настоящее время. Я попытался сделать echo mysql_error(), но это не сработало, как я и ожидал, поскольку библиотека db Kohana 3 использует PDO, я в этом уверен.

Как я могу выяснить произошедшую ошибку?

Ответы [ 3 ]

2 голосов
/ 12 февраля 2010

Попробуйте выполнить это после вызова $db->execute():

echo Database::instance()->last_query
0 голосов
/ 14 февраля 2010

Должно выдать исключение, если это ошибка SQL. Вы можете поймать это и повторить это, чтобы получить ошибку. Смотри http://kerkness.ca/wiki/doku.php?id=crud_with_the_query_builder

0 голосов
/ 12 февраля 2010

Внутри контроллера запустить профилировщик:

$this->profiler = new Profiler;

А затем после рендеринга View вы увидите список запросов, которые были выполнены. Попробуйте их, подключившись к базе данных или используя какое-либо программное обеспечение (например, MySQL Query Browser).

Удачи!

...