webForumDet fria alternativet

Söka i databas med CONTAINS

ASP

2 svar · 225 visningar · startad av Andy

Medlem sedan sep. 2001138 inlägg
Frågan#1

På min site kan besökarna söka i databasen genom att fylla i ett vanligt formulär. Tidigare har jag använt LIKE i min SQL-fråga, men tänkte nu gå över till CONTAINS, för att på så sätt få upp prestandan. Problemet är ju bara att om användaren skriver in ord som AND, FROM och NOT, och alla andra liknande ord så får jag ett felmeddelande som lyder "Expected ''''' in search condition". Finns det någon färdig kodsnutt någonstans som rensar bort alla sådana ord, och sätter ihop en sökfras som är korrekt? Och om inte, hur skriver jag en egen? Tycker att det verkar vara ett oerhört stort jobb att få en sådan sökfunktion att fungera utan problem.

Medlem sedan dec. 200012 464 inlägg
#2

Att maska bort vissa ord är enkelt

set  o = new regexp
o.global = true
o.ignorecase = true
o.pattern = "\b(FROM|AND|TO|NOT)\b"
searchString = o.execute(request.form("search"),"")

Jag är inte insatt i CONTAINS. Vad är det mer man vill förhindra?

Medlem sedan sep. 2001138 inlägg
#3

Det finns en jäkla massa "noise"-ord som genererar fel. Säkert över hundra. Prepositioner, of, from etc.

264 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)