Foros del Web » Programando para Internet » PHP »

ERRORES SQL Con PDO

Estas en el tema de ERRORES SQL Con PDO en el foro de PHP en Foros del Web. Estimados: he buscado info pero aun no puedo hacer lo siguiente, que es mostrar los errores sql.. como por ejemplo de este tipo. cuando te ...
  #1 (permalink)  
Antiguo 14/11/2008, 11:27
 
Fecha de Ingreso: noviembre-2008
Mensajes: 67
Antigüedad: 15 años, 5 meses
Puntos: 1
ERRORES SQL Con PDO

Estimados:

he buscado info pero aun no puedo hacer lo siguiente, que es mostrar los errores sql.. como por ejemplo de este tipo. cuando te dice ke el query esta malo


Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]Sintaxis incorrecta cerca de la palabra clave 'as'., SQL state 37000 in SQLExecDirect in C:\AppServ\www\base_resultante_sql_server.php on line 22



estos tipos de errores... desaparecieron una vez que empeze a trabajar con la clase PDO.

ejemplo:
$sql = "Select * from base_no_existe";
// el query puede tener mal escrita una palabra
// pero aun pese al error continua y no se cae
//y o peor ke no muestra por ke cayo
include ('../conexion/saturno.php');
$consulta = $link->prepare($sql);
$consulta ->execute();
while ($row = $consulta->fetch())
{
echo $row[0];
}

despues quize encontrar otro metodo... medio chamullado xD... pero ke encierta manera hace lo ke kiero pero no de la forma ke deberia ser


try{
include ('../conexion/saturno.php');
foreach ($link->query($sql) as $raw)
{

print $raw[0]."<br>";

}
$link = null;
}
catch (PDOException $e)
{
//print de error en caso de coneccion a la base de datos.
print "Error!: " . $e->getMessage() . "<br/>";
die();
}


si bien en este caso cuando el query ta malo, se cae... pero no por error sql, sino por ke no le entre ningun valor al foreach. y se cae por valor nulo... ya que aun qie un query no me traiga algun dato pero este correcto el foreach no se cae. de esa forma he podido encontrar cuales son los querys ke no me funkan.

pero no es la idea ke por un error del foreach, me de cuenta de ello. si no kiero ke atraves de la clase de pdo me lance el mismo tipo de error que como lo haria con odbc_exec

Agradeceria mucho quien me pueda ayudar.. con esto .

atte PATUX

Pd. si no me explique.. lo escribire de otra forma

pd2: soy nuevo,,, pero he estado mirando el foro y esta rebueno... espero poder aportar... cuando pueda...
  #2 (permalink)  
Antiguo 14/11/2008, 12:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ERRORES SQL Con PDO

Hola PATUX,

Tienes que llamar al método setAttribute para pasarle que muestre excepciones, algo así: setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Saludos.
  #3 (permalink)  
Antiguo 17/11/2008, 13:03
 
Fecha de Ingreso: noviembre-2008
Mensajes: 67
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: ERRORES SQL Con PDO

Gracias... eso resolvio el problema...

solo debia agregar..

$link->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );

atte PATUX
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:28.