En application/config/database.php establecer
// suppress error output to the screen
$db['default']['db_debug'] = FALSE;
En su modelo o controlador:
// try the select.
$dbRet = $this->db->select($table, $dataArray);
// select has had some problem.
if( !$dbRet )
{
$errNo = $this->db->_error_number();
$errMess = $this->db->_error_message();
// Do something with the error message or just show_404();
}