Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/08/2011, 16:53
Avatar de quike88
quike88
 
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 11 meses
Puntos: 87
Problema con try catch

Hola a todos,

Les comento mi problema, el asunto es que tengo un array con una gran cantidad de datos que quiero ingresar a una tabla en mi BD, el problema es que algunas filas del array me dan error, ya sea por tener un tipo de dato diferente al definido en la columna o porque no tiene datos y esa columna no acepta NULL.

Entonces se me ocurrio usar try/catch (que no había usado antes) para atrapar esos errores y evitar que el proceso se interrumpa, lo que hice es esto para probar si funcionaba:

Código PHP:
foreach ($array() as $row) {
    try {
        if (!
$this->db1->insert("tabla"$row)) {
            throw new 
Exception('error en fila '.$row['NUMROW']);
        } else {
            echo 
'Fila '.$row['NUMROW'].' insertada correctamente <br />';    
        }
    } catch (
Exception $e) {
        echo 
'Excepción capturada: ',  $e->getMessage(), " <br />";    
    }

Pero cuando llega a la fila que da problemas, me sale un error "Ocurrió un Error con la Base de Datos..." y se detiene el proceso.

Estoy usando mal try/catch? o es un problema con la manipulación del errores del CI? Espero que puedan darme un mano con este problema.

Gracias.