В CI есть метод, возвращающий код ошибки запроса,
$this->db->error(); но только последнего запроса, а в процессе работы приложения выполняется множество запросов, и если ошибку дал не последний, то хук, куда вставлял этот метод, не регистрирует ошибки... Есть вариант встроить обработчик в шаблон вывода ошибки БД. Но это костыль и при вызове через CLI не сработает...
Рефракторить код и добавлять логику обработки каждого запроса не хочется. Это долго, и вероятен человеческий фактор ошибки в коде.
Подскажите, как правильно ловить ошибки в CodeIgnater 3