Ver Mensaje Individual
  #6 (permalink)  
Antiguo 21/12/2005, 15:02
Avatar de Myakire
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
Bueno, como se esta concatenando siempre el " AND", pues hay que quitárselo al final, por eso el -4

Tendrias despues de dos iteraciones, algo como:
sql = " Descripcion like '%algo%' and Descripcion like '%otra_cosa%' and"

entonces, si lo ejecutas así, claramente te dará error, si cortamos la cadena desde el inicio hasta el final-4 caracteres, quitas el and y el espacio.

sql = MID(sql,1 , LEN(sql)-4)

Saludos


EDITADO

Bueno, lo hice solo para asegurarme, y así quedaría más o menos:

Código:
 vSQL = "SELECT     dbo.Articulos.Id_Arti, ........... WHERE " 
 CadBusqueda = Request("Palabra")
 Palabras = SPLIT(CadBusqueda," ")
 vWhere = ""
 For i=0 To UBound(Palabras)
     Cadena = Trim(Palabras(i))
     if Cadena <> "" Then
        vWhere = vWhere & "(dbo.Articulos.Descripcion LIKE ''%"+Cadena+"%'') AND"
     End If
 Next
 If LEN(vWhere) > 0 Then
    vWhere = MID(vWhere,1,LEN(vWhere)-3)
 End If 
 vSQL = vSQL & vWhere
 response.write vSQL
 response.end
Saludos one more time

PD. El Full-Text Search del Sql Server que apuntó orharo2003 () no lo he usado, pero conociéndolo, seguro simplificaría mucho las cosas, sería bueno ver esa alternativa también.


Última edición por Myakire; 21/12/2005 a las 15:14