Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Dos consultas diferentes con el mismo resultado

Estas en el tema de Dos consultas diferentes con el mismo resultado en el foro de Mysql en Foros del Web. Hola a tod@s, en mi base de datos, tengo una tabla expositor en donde la clave primaria es la columna numero que es un INT(11), ...
  #1 (permalink)  
Antiguo 04/06/2012, 02:36
 
Fecha de Ingreso: septiembre-2006
Mensajes: 94
Antigüedad: 17 años, 7 meses
Puntos: 1
Dos consultas diferentes con el mismo resultado

Hola a tod@s, en mi base de datos, tengo una tabla expositor en donde la clave primaria es la columna numero que es un INT(11), al hacer estas dos consultas obtengo el resultado igual, la misma fila, yo quisiera que en el primer caso no me devolviera nada para desde php no mostrar ningun resultado.
select * from expositor where numero = "729a"
select * from expositor where numero = "729"
¿Alguna sugerencia?
Un saludo a tod@s.
  #2 (permalink)  
Antiguo 04/06/2012, 02:53
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Dos consultas diferentes con el mismo resultado

Cita:
...la clave primaria es la columna numero que es un INT(11)...
Si es int la consulta se debe hacer así

select * from expositor where numero = 729

Sin delimitadores, en este caso

select * from expositor where numero = 729a

daria error....

Si es un int no puede ser 729a esto es un string...

Debes validar lo que consultas, es decir antes de lanzar la query ya sabes que 729a no es un valor válido para ese campo luego la consulta no debe llegar a lanzarse....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 04/06/2012, 03:16
 
Fecha de Ingreso: septiembre-2006
Mensajes: 94
Antigüedad: 17 años, 7 meses
Puntos: 1
Respuesta: Dos consultas diferentes con el mismo resultado

Es un formulario que recojo el número en un campo de texto, sin embargo si pongo en el campo de texto "729a" me devuelve igual que "729", pero si pongo "a729" no me devuelve nada que es lo correcto.
Un saludo
  #4 (permalink)  
Antiguo 04/06/2012, 04:00
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Dos consultas diferentes con el mismo resultado

Lo correcto es que si el campo es un INT no llegue un STRING.

Por que pones a729 o 729a? Si haces la consulta sin delimitadores no admitirá ninguno de los dos casos que es lo que debe ser... y previamente debes validar lo que se pone en el formulario si es un STRING debe mandar un error...

La validación la puedes hacer en el cliente con JAVASCRIPT o en el servidor con PHP....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: php, select, tabla, resultados
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 13:32.