Foros del Web » Programando para Internet » PHP »

ayuda sql please

Estas en el tema de ayuda sql please en el foro de PHP en Foros del Web. Hola amigos , tengo un problema que llevo toda la mañana intentando resolverlo y no hay manera. Es una consulta sql que antes me funcionaba ...
  #1 (permalink)  
Antiguo 09/07/2008, 05:06
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
ayuda sql please

Hola amigos , tengo un problema que llevo toda la mañana intentando resolverlo y no hay manera. Es una consulta sql que antes me funcionaba y no se que diablos habré hecho que ahora no funciona.
Resumo:
Hago una consulta a una tabla con varios campos de artículos.
artid - art_name - art_price - ref

El tema es que tengo un script php que hace la siguiente consulta
Código:
 $query = "SELECT artid
             FROM articles
			 WHERE ref='002'";
Y el misterio reside en que si hago la consulta poniendo en el WHERE el art_name="manzanas" (por ejemplo) ,si me encuentra el artid de ese artículo , pero si pongo ref='002' (referencia que SI EXISTE EN LA TABLA DE LA BD) no me lo encuentra. He probado con phpmyadmin y desde allí hice ambas consultas , cuando hago desde phpmyadmin
SELECT artid
FROM articles
WHERE art_name='manzanas';

Si me lo encuentra , ahora si hago:
SELECT artid
FROM articles
WHERE ref='002';

Me devuelve esto "MySQL ha devuelto un valor vacío (i.e., cero columnas). (La consulta tardó 0.0005 seg)".
Está más que comprobado que las referencias existen en la tabla de la Bd y está más que comprobado que el campo ref existe también . ¿Cual puede ser el problema?, me estoy volviendo loco con esta chorrada , pero no consigo dar en el clavo.
Además si hago esto en phpmyadmin
SELECT artid
FROM articles
WHERE ref!=0

Cursiosamente me devuelve todos los artid (porque ninguna ref vale 0), es decir si hay ref en todas las filas pero si pongo ref= a algo me devuelve un resultado vacío ¿porque?.
Gracias de antemano a tod@s.
  #2 (permalink)  
Antiguo 09/07/2008, 05:11
 
Fecha de Ingreso: junio-2008
Mensajes: 291
Antigüedad: 15 años, 10 meses
Puntos: 9
Respuesta: ayuda sql please

Hola. Hay una opción en phpmyadmin para que el campo pueda tener el cero delante. Creo que debería modificar ese campo, por eso creo que busca 2 en lugar de 002.
  #3 (permalink)  
Antiguo 09/07/2008, 05:56
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
De acuerdo Respuesta: ayuda sql please

Cita:
Iniciado por charlyta Ver Mensaje
Hola. Hay una opción en phpmyadmin para que el campo pueda tener el cero delante. Creo que debería modificar ese campo, por eso creo que busca 2 en lugar de 002.
Bueno gracias pero en realidad eso era un ejemplo solamente ,esa referencia NO EXISTE , las referencias son del tipo C28 , C34 , G56.


¡¡RESUELTO¡¡
Pongo aquí la solución porque si a alguien le sirve.
El tema es que se ve que modifiqué algo (todavía no lo he revisado pero es eso seguro) al introducir nuevos artículos en la bd que cuando inserta la referencia (ref) por ejemplo C28 ,en phpmyadmin deja un espacio en blanco ,es decir que al buscar con un select ref='C28' o la referencia que sea ,NUNCA la encuentra porque se a insertado con un espacio en blanco en la Bd ,es decir en vez de 'C28' se inserta ' C28'. ¡¡ESE ERA TODO EL MISTERIO¡¡.
Un saludo y gracias

Última edición por Dundee; 09/07/2008 a las 06:22
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:11.