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

SQL con * valores totales no funciona

Estas en el tema de SQL con * valores totales no funciona en el foro de ASP Clásico en Foros del Web. Hola estoy haciendo un buscador en una aplicacion en ASP En el formulario tengo que el valor predeterminado de cada campo si no se toca ...
  #1 (permalink)  
Antiguo 08/02/2007, 04:03
Avatar de engonga
Usuario no validado
 
Fecha de Ingreso: marzo-2002
Ubicación: Buenos Aires
Mensajes: 1.300
Antigüedad: 23 años, 1 mes
Puntos: 8
SQL con * valores totales no funciona

Hola estoy haciendo un buscador en una aplicacion en ASP

En el formulario tengo que el valor predeterminado de cada campo si no se toca es * que para mi entender es que me muestre todo

tengo esta sentencia

cat1 cat2 cat3 comarca ansde y ansa son las varables que recojo del formulario

pero no me funciona


Código PHP:
Dim valor_filtre,  rodrecat1cat2cat3comarcaansdeansa
cat1 
Request.form("cat1")
cat2 Request.form("cat2")
cat3 Request.form("cat3")
comarca Request.Form("comarca")
ansde Request.form("ansde")
ansa Request.form("ansa")
ordre "CODI"
If (Request.form("ordre") <> ""Then 
  ordre 
Request.Form("ordre")
  else
  
ordre Request.querystring("ordre")
End If
 
cantidadregistros=numregistresmostrats

if request.querystring("paginaactual")<>"" then
     mostrarpagina
=request.querystring("paginaactual")
else
     
mostrarpagina=1
end 
if
 

Dim RES_DADESTOTAL
Dim RES_DADESTOTAL_numRows
Set RES_DADESTOTAL 
Server.CreateObject("ADODB.Recordset")
RES_DADESTOTAL.ActiveConnection MM_sumer_con_STRING
RES_DADESTOTAL
.Source "SELECT *  FROM CURRICULUMS  WHERE [CATEGORIA PROF1]='"&cat1&"' AND [CATEGORIA PROF2]='"&cat2&"' AND [CATEGORIA PROF3]='"&cat3&"' AND (EDAT>="&ansde&" AND EDAT<="&ansa&") AND COMARCA='"&comarca&"' ORDER BY ["&ordre&"] ASC"

RES_DADESTOTAL.CursorType 0
RES_DADESTOTAL
.CursorLocation 3
RES_DADESTOTAL
.LockType 3
RES_DADESTOTAL
.cachesize=60
RES_DADESTOTAL
.Open() 

he provado de ponerlo automaticamente

Código PHP:
[CATEGORIA PROF2]=* 
y tampoco fuciona

en acces hagu una consulta y me funciona la sentencia que me da acces es

Código HTML:
SELECT CURRICULUMS.[CATEGORIA PROF1], CURRICULUMS.[CATEGORIA PROF2], CURRICULUMS.EDAT, CURRICULUMS.COMARCA
FROM CURRICULUMS
WHERE (((CURRICULUMS.[CATEGORIA PROF1]) Like "*") AND ((CURRICULUMS.[CATEGORIA PROF2]) Like "*") AND ((CURRICULUMS.[CATEGORIA PROF3]) Like "*") AND ((CURRICULUMS.EDAT)>0) AND ((CURRICULUMS.EDAT)<99) AND ((CURRICULUMS.COMARCA) Like "*"));

alguien me puede hechar un cable?


gracias
  #2 (permalink)  
Antiguo 08/02/2007, 04:11
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 21 años, 4 meses
Puntos: 144
Re: SQL con * valores totales no funciona

Haz un response.write de la sentencia sql, para que te la imprima en pantalla, y añade luego un response.end

Así verás como queda construida la sentencia, y la verás en pantalla con los datos que le has pasado.
Código:
'debajo de la sentencia sql, pon esto:
response.write "SELECT *  FROM CURRICULUMS  WHERE [CATEGORIA PROF1]='"&cat1&"' AND [CATEGORIA PROF2]='"&cat2&"' AND [CATEGORIA PROF3]='"&cat3&"' AND (EDAT>="&ansde&" AND EDAT<="&ansa&") AND COMARCA='"&comarca&"' ORDER BY ["&ordre&"] ASC"
response.end
Salu2
  #3 (permalink)  
Antiguo 08/02/2007, 12:11
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, 2 meses
Puntos: 535
Re: SQL con * valores totales no funciona

Y digo yo... si no querés filtrar por ese campo porque querés que te muestre todo... ¿para qué fltrás?

Sacá del WHERE los campos cuando estos tengan el valor predeterminado "todo" y listo
__________________
...___...
  #4 (permalink)  
Antiguo 08/02/2007, 18:59
Avatar de engonga
Usuario no validado
 
Fecha de Ingreso: marzo-2002
Ubicación: Buenos Aires
Mensajes: 1.300
Antigüedad: 23 años, 1 mes
Puntos: 8
Re: SQL con * valores totales no funciona

por que del formulario por defecto me envia *

pero si el usuario pone un valor ya no me envia *
  #5 (permalink)  
Antiguo 09/02/2007, 10:55
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, 2 meses
Puntos: 535
Re: SQL con * valores totales no funciona

Tenés que hacer algo así:

SQL = "RES_DADESTOTAL.Source = "SELECT * FROM CURRICULUMS WHERE"

Código:
if cat1 <> "*" then SQL = SQL & " [CATEGORIA PROF1]='"&cat1&"'"
if cat2 <> "*" then SQL = SQL & "  AND [CATEGORIA PROF2]='"&cat2&"'"
...
SQL = SQL & " ORDER BY ["&ordre&"] ASC"
__________________
...___...
  #6 (permalink)  
Antiguo 10/02/2007, 07:03
Avatar de engonga
Usuario no validado
 
Fecha de Ingreso: marzo-2002
Ubicación: Buenos Aires
Mensajes: 1.300
Antigüedad: 23 años, 1 mes
Puntos: 8
Re: SQL con * valores totales no funciona

esto que es la sentencia SQL o es una parte mas del ASP?


gracias
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 01:46.