Foros del Web » Programando para Internet » ASP Clásico »

problemas con consulta

Estas en el tema de problemas con consulta en el foro de ASP Clásico en Foros del Web. Hola necesito filtrar los resultados en los que el nombre del producto sea el que paso entre paginas y a su vez e campo activa ...
  #1 (permalink)  
Antiguo 15/02/2010, 11:17
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 8 meses
Puntos: 1
problemas con consulta

Hola

necesito filtrar los resultados en los que el nombre del producto sea el que paso entre paginas y a su vez e campo activa sea 1

sql = "SELECT * FROM faqs where NomProducto = '"& Request.QueryString("NomProducto")&"' AND activo="1" "

me da error.

¿k hago mal?

gracias
fran
  #2 (permalink)  
Antiguo 15/02/2010, 12:01
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 21 años
Puntos: 4
Re: problemas con consulta

Suponiendo q activo es numerico :

sql = "SELECT * FROM faqs where NomProducto = '" & Request.QueryString("NomProducto") & "' AND activo=1"
  #3 (permalink)  
Antiguo 15/02/2010, 13:51
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 8 meses
Puntos: 1
Respuesta: problemas con consulta

ok gracias, pero... y si fuera txt como se pondrian las comillas?

gracias again
saludos
fran
  #4 (permalink)  
Antiguo 15/02/2010, 14:00
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 21 años
Puntos: 4
Re: problemas con consulta

sql = "SELECT * FROM faqs where NomProducto = '" & Request.QueryString("NomProducto") & "' AND activo='1'"
  #5 (permalink)  
Antiguo 15/02/2010, 14:00
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 8 meses
Puntos: 1
Respuesta: problemas con consulta

Hola

Ahora tengo otra un poco, para mi, mas complicada

SQL="SELECT DISTINCT provincias.NomProvincia FROM provincias INNER JOIN dealers ON provincias.NomProvincia = dealers.NomProvincia Order By provincias.NomProvincia asc "


esto funciona, pero ahora... donde pongo el activo=1 (numerico)??

gracias
fran
  #6 (permalink)  
Antiguo 15/02/2010, 15:00
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 1 mes
Puntos: 535
Respuesta: problemas con consulta

antes del Order By
__________________
...___...
  #7 (permalink)  
Antiguo 16/02/2010, 11:59
Avatar de Valery-Net  
Fecha de Ingreso: agosto-2008
Mensajes: 694
Antigüedad: 16 años, 7 meses
Puntos: 12
Respuesta: problemas con consulta

Cuidado con el uso Request.QueryString directamente en las sentencias SQL, fácilmente puedes hacerte un sql injection
  #8 (permalink)  
Antiguo 16/02/2010, 14:02
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 8 meses
Puntos: 1
Respuesta: problemas con consulta

Hola

Tengo un problema con la consulta ya que online=1 se refiere a dealers y no a provincias

He puesto esto, pero m da error

SQL="SELECT DISTINCT provincias.NomProvincia FROM provincias INNER JOIN dealers where online=1 ON provincias.NomProvincia = dealers.NomProvincia Order By provincias.NomProvincia asc "

alguien sabe como puedo resolverlo?
gracias
  #9 (permalink)  
Antiguo 19/02/2010, 10:01
 
Fecha de Ingreso: octubre-2007
Mensajes: 191
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: problemas con consulta

Toc toc.....jejejeje el problema de tu consulta es que aplicas la clausula ORDER BY antes de dar la condición para unir las tablas con el ON provincias.NomProvincia = dealers.NomProvincia

Tu consulta esta asi:
Cita:
SQL="SELECT DISTINCT provincias.NomProvincia FROM provincias INNER JOIN dealers
where online=1 ON provincias.NomProvincia = dealers.NomProvincia Order By provincias.NomProvincia asc "
Así tendría que quedar:

Cita:
SQL="SELECT DISTINCT provincias.NomProvincia
FROM provincias INNER JOIN dealers
ON provincias.NomProvincia = dealers.NomProvincia
WHERE online=1
Order By provincias.NomProvincia asc "
Te recomendaría que para que te sea más fácil encontrar los errores en consultas SQL imprimas en pantalla la consulta para que la puedas pegar en el analizador de consultas de SQL Server.
De esta forma:
Cita:
Response.Write (SQL)
Esop Salu2 y suerte

Etiquetas: Ninguno
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 09:50.