Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Error al ejecutar una consulta (Perl y MS Access)

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Mensaje Jue Jul 03, 2008 1:22 pm
JROSS
Perlero Nuevo
Perlero Nuevo
Registrado: 03 Jul 2008
Mensajes: 5
Error al ejecutar una consulta (Perl y MS Access) Responder citando

Saludos todos, ¿serían tan amables de ayudarme con lo siguiente?

Estoy tratando de ejecutar una consulta hacia una base de datos en MS Access,

Perl:
my $sth = $dbh->prepare("SELECT name FROM TRENDDATA WHERE TID_=169  and DATA_VALUE_= 800");

pero me sale un error:

Código:
DBD::ODBC::st execute failed: [Microsoft][Controlador ODBC Microsoft Access] No
coinciden los tipos de datos en la expresi¾n de criterios. (SQL-22018) at C:\Perl\bin\ACBDMY~2.PL line 49.


Pero si cambio el query por "select * from trenddata", me la ejecuta sin ningún problema, al parecer no soporta el tipo de consulta que quiero.
Mensaje Jue Jul 03, 2008 1:31 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4130
Ubicación: Valladolid, España
Responder citando

Bienvenido a los foros de Perl en Español, JROSS.

¿Seguro que la consulta está bien?

Prueba con esto:
Perl:
my $sth = $dbh->prepare("SELECT name FROM TRENDDATA WHERE TID_='?' and DATA_VALUE_='?'");
$sth->exec(169,800);
Mensaje Jue Jul 03, 2008 1:58 pm
JROSS
Perlero Nuevo
Perlero Nuevo
Registrado: 03 Jul 2008
Mensajes: 5
Responder citando

Sí, en efecto, la estructura de la query está bien, el error se debía en efecto a un campo de la BD está en integer y otro en varchar; yo suponía que ambos campos estaban en integer.

Quedo así...

Perl:
my $sth = $dbh->prepare("SELECT TID_,DATA_VALUE_ FROM TRENDDATA where TID_ = 169 and data_value_= '832.0' ");


¡¡¡Es lo malo de usar bases de datos diseñados por terceras personas!!!

¡¡¡Gracias!!!
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos Todas las horas son GMT - 6 Horas
Página 1 de 1



Powered by phpBB © 2001, 2005 phpBB Group