Я соединяю несколько моделей для моего codeigniter сайта и, может казаться, не нахожу слова в документации того, как обработать ошибки, которые могли произойти при использовании Активной Рекордной системы.
Документация демонстрирует, как выполнить CRUD наряду с некоторыми относительно включенными запросами, но не где вдоль строки обсужденная обработка ошибок. Я сделал быстрый поиск Google, и казалось бы, что Активные Рекордные классы не выдают исключения. Имеет место это? Никакая выгода попытки затем...
Так, как Вы кодируете для обработки ошибок базы данных в codeigniter? (неудавшееся соединение, копируйте ключевую, поврежденную ссылочную целостность, усечение, типы неправильных данных и т.д. и т.д.),
Независимо от того, используете вы активный класс записи или нет, вы можете получить доступ к ошибкам базы данных с помощью $ this-> db -> _ error_message ()
и $ this-> db -> _ error_number ( )
.
Если вы используете базу данных mysql, эти функции эквивалентны mysql_error ()
и mysql_errno ()
соответственно. Вы можете проверить эти функции, посмотрев исходный код драйвера базы данных для используемой вами базы данных. Они находятся в system / database / drivers.
Итак, после выполнения запроса вы можете проверить наличие ошибок, используя что-то вроде:
if ($this->db->_error_message()) \\handle error