Em Kohana 3, como você descobrir erros cometidos durante uma consulta?
Pergunta
Eu estou usando Kohana 3.
Eu estou escrevendo uma consulta de actualização, e que está trabalhando para tudo, exceto um presente seção.
Se eu fizer um var_dump()
nos resultados de $db->execute()
eu recebo um 1 ou 0 a dizer que falhou ou não. Ele está falhando neste exemplo (retornando 0).
Como posso descobrir o erro está acontecendo? Ele justs parece ser silenty falhando no ser tempo. Eu tentei fazer echo mysql_error()
mas não funcionou, como eu esperava, como Kohana 3 da DB utiliza a biblioteca de DOP eu tenho certeza.
Como posso descobrir o erro que ocorreu?
Solução
Tente executar isso depois $db->execute()
chamando:
echo Database::instance()->last_query
Outras dicas
Dentro do controlador executar o profiler:
$this->profiler = new Profiler;
E, em seguida, após a renderização Ver você verá uma lista de consultas que foram executadas. Testá-los conectando-se ao banco de dados ou usando algum software (como o MySQL Query Browser).
Boa sorte!
Deve lançar uma exceção se for um erro SQL. Você pode pegar isso e eco-lo para obter o erro. Consulte http://kerkness.ca/wiki/doku.php?id=crud_with_the_query_builder