Я знаю, что эта ветка старая, но на случай, если кто-то еще столкнулся с этой проблемой.Это трюк, который я использовал, не касаясь классов CI db.Оставьте свою отладку включенной и в своем файле просмотра ошибок, сгенерируйте исключение.
Итак, в вашей конфигурации db у вас есть:
$db['default']['db_debug'] = true;
Затем в вашем файле просмотра ошибок db моеapplication/errors/error_db.php
замените все содержимое следующим:
<?php
$message = preg_replace('/(<\/?p>)+/', ' ', $message);
throw new Exception("Database error occured with message : {$message}");
?>
Поскольку будет вызываться файл представления, ошибка всегда будет выдаваться как исключение, впоследствии вы можете добавить различные представления для другой среды.