Skip to content
Advertisement

CodeIgniter – how to catch DB errors?

Is there a way to make CI throw an exception when it encounters a DB error instead of displaying a message like:

A Database Error Occurred Error Number: 1054 Unknown column ‘foo’ in ‘where clause’ SELECT * FROM (FooBar) WHERE foo = ‘1’

NOTE: I only want this to happen in one controller. In the other controllers, I’m happy for it to display the DB error messages.

Advertisement

Answer

Try these CI functions

$this->db->_error_message(); (mysql_error equivalent)
$this->db->_error_number(); (mysql_errno equivalent)

UPDATE FOR CODEIGNITER 3

Functions are deprecated, use error() instead:

$this->db->error(); 
User contributions licensed under: CC BY-SA
4 People found this is helpful
Advertisement