Det beror på vilken databas men detta är väl principen:
...AND alternativ LIKE '%" & alt &"%' [B]COLLATE Latin1_General_CI_AI[/B]
CI=Case insensitive
och
AI=Accent insensitive
Databaser & SQLur Databashanterare & SQL
4 svar · 858 visningar · startad av Yepp
Hej!
Har fastnat med en liten irriterande grej, har pulat och fnulat lite själv - samt sökt runt lite men inte hittat något bra svar eller lösning.
Har idag en ordinär sökruta för att söka igenom sidan, vanlig klassisk asp-kod med %Like% och liknande - problemet som finns är att jag skulle vilja att så att säga eliminera alla udda tecken i sökoperationen.
Dvs: en sökning på "erichsén" ska hitta "erichsen" - likväl skall en sökning på "santona" hitta "santonã". Jag vill alltså sudda ut alla udda tecken och likställa dem till ordinära bokstäver - och det skall alltså fungera "på båda hållen".
Visst med lite pill skulle väl lite replace hit och dit kunna få det att fungera - men är inte riktigt säker på hur det lättast skulle kunna utformas. Kanske finns något smidigare och enklare sätt dessutom?
Ungefär så här ser den simpla sökfunktionen ut idag:
SQLE = "SELECT namn FROM databas WHERE namn + text + info LIKE '%" & search &"%' AND alternativ LIKE '%" & alt &"%' ORDER BY namn"
Tacksam för alla tips och svar :OO
Det beror på vilken databas men detta är väl principen:
...AND alternativ LIKE '%" & alt &"%' [B]COLLATE Latin1_General_CI_AI[/B]
CI=Case insensitive
och
AI=Accent insensitive
Flyttas från ASP
Okay - tackar, har inte provat än med det verkar vara ett steg i rätt riktning.
Databasen för tillfället är en access - men eventuellt är en stor konvertering till MySQL på gång...
Något bra tips på resurs för att läsa / lära sig mer om ovanstående?
Okay efter lite efterforskningar har det visat sig att ovanstående fungerar alldeles utmärkt med MySQL men inte med MS Access - där det krävs lite kringgångar, i form av t.ex. en funktion.
Se: http://www.zen51342.zen.co.uk/vbadv/vbadv_013.htm