Как поймать ошибки БД в CodeIgniter PHP

Я новичок в CodeIgniter, PHP и MySQL. Я хочу обработать ошибки, вызванные БД. Из одного из сообщений в Stackoverflow я знал, что, следуя заявлению, можно поймать ошибку.

$this->db->_error_message(); 

Но я не могу разобраться в точном синтаксисе использования этого. Предположим, я хочу обновить записи таблицы с именем «table_name» следующим выражением:

 $array['rank']="8"; $array['class']="XII"; $this->db->where('roll_no',$roll_no); $this->db->update("table_name", $array); 

Здесь, в приведенном выше коде, я хочу поймать ошибку БД всякий раз, когда происходит нарушение уровня БД, т.е. либо имя поля недопустимо, либо имеет место какое-то уникальное нарушение ограничений. Если кто-нибудь поможет мне исправить это, я буду очень благодарен. Спасибо.

Solutions Collecting From Web of "Как поймать ошибки БД в CodeIgniter PHP"

codeIgniter имеет для этого функции

 $this->db->_error_message(); $this->db->_error_number(); if(!$this->db->update("table_name", $array)) { $this->db->_error_message(); $this->db->_error_number(); } 

Вы можете отлаживать ошибку базы данных в конфигурации базы данных в (config / database.php) следующим образом:

 $db['default']['db_debug'] = TRUE; 

Подробнее читайте здесь

Также вы можете использовать Profiler для просмотра всех запросов и их скорости. В контроллере вы можете поместить это:

 $this->output->enable_profiler(TRUE); 

Подробнее читайте здесь

На Codeigniter версии 2,

 $this->db->_error_message(); $this->db->_error_number(); 

На Codeigniter версии 3,

 $db_error = $this->db->error(); echo '<pre>';print_r($db_error);echo '</pre>';