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

Problema con consulta

Estas en el tema de Problema con consulta en el foro de ASP Clásico en Foros del Web. Hola , Queria consultar por un problema que tengo en un desarrollo ASP, le estuve dando muchas vueltas pero no logro sacar que es lo ...
  #1 (permalink)  
Antiguo 24/04/2008, 10:38
 
Fecha de Ingreso: abril-2008
Ubicación: Argentina
Mensajes: 20
Antigüedad: 17 años
Puntos: 2
Problema con consulta

Hola , Queria consultar por un problema que tengo en un desarrollo ASP, le estuve dando muchas vueltas pero no logro sacar que es lo que esta mal

Es una pantalla de resultados de productos la cual tiene filtros hechos con imagenes y un link ejem productos.asp?ca=1&le=F

Donde puedo filtrar por categoria o por letra inicial.El filtro por categoria que es el que se utiliza por defaul funciona ok y me lista los productos que corresponden armando una sentencia SQL como la de abajo

SELECT PRODUCTOS.DESCSPA ,PRODUCTOS.DESCENG FROM PRODUCTOS WHERE 1 AND IDCATEGORIA = 1 ORDER BY PRODUCTOS.DESCSPA ASC ;


Luego cuando se presiona en una letra para filtrar arroja una consulta como esta:

SELECT PRODUCTOS.DESCSPA ,PRODUCTOS.DESCENG FROM PRODUCTOS WHERE 1 AND IDCATEGORIA = 1 AND PRODUCTOS.DESCSPA LIKE 'C*' ORDER BY PRODUCTOS.DESCSPA ASC ;

Las dos son validas cuando las ejecuto directamente en la base access, pero en el segundo caso no me aparece nada y el programa va por el camino de que no se encontraron registros.

la parte de la conexion seria esta:

....

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ="&Server.MapPath("productos.mdb")
Set registro = Server.CreateObject("ADODB.Recordset")
consulta = "SELECT PRODUCTOS.DESCSPA ,PRODUCTOS.DESCENG FROM PRODUCTOS WHERE " & filtro & orden & ";"
response.Write(consulta) 'para ver la consulta que se manda a ejecutar
registro.Open consulta, objConn

if not registro.eof then
response.Write("primera")
registro.movefirst
End if

.....

yo utilizo para debug el mostrar carteles porque desconozco si existe otra herramienta mejor, programo con el dreamweaver (prefiero el php en realidad, pero me salio este proyecto)

Agradeceria cualquier idea que me puedan dar. Muchas gracias
  #2 (permalink)  
Antiguo 24/04/2008, 11:05
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Re: Problema con consulta

Como que recuerdo de años que este problema se trató, creo recordar que en Access funcionaba el * como comodín pero el MDAC (¿qué versión tienes? ¿el 2.8?) ocupaba el % ¿o había que matar el valor del *?

Bueno, en fin, prueba con el % como comodín
  #3 (permalink)  
Antiguo 24/04/2008, 11:11
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Re: Problema con consulta

Cita:
Iniciado por Myakire Ver Mensaje
Bueno, en fin, prueba con el % como comodín
Si exacto, el comodin deberia ser %

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #4 (permalink)  
Antiguo 24/04/2008, 11:20
 
Fecha de Ingreso: abril-2008
Ubicación: Argentina
Mensajes: 20
Antigüedad: 17 años
Puntos: 2
Re: Problema con consulta

Hola muchas gracias a Todos , no saben como se los agradezco, ahora lo que no entiendo es porque al pegar la consulta en el editor de SQL del access funcionaba con * en lugar de %. Odio a bill.....
  #5 (permalink)  
Antiguo 24/04/2008, 11:24
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Re: Problema con consulta

Es por lo que te comenté, en Access el * es comodín si tienes el Access en Español, pero el MDAC esta en inglés y en ese el comodín es el %.
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:06.