Jeg har lavet en stored procedure til min hjemmeside søgning. Når brugere indtaster søgeord "jeg leder på flere ord", så vil jeg have SP at lede på hvert ord sig.
I Stored Procedures ?? Øh... hvorfor der ??? Det vil da være langt lettere at køre det i f.ex. ASP, da du skal dele tekststrengen op for at det kan lade sig gøre. Jeg kender ikke nogen INSTR kommando der fungerer i S.P. Den eneste jeg kender der kan trække enkelte karakterer ud af en streng, er SUBSTRING, og hvis du ikke kan finde mellemrummene, så begynder det at blive kreativt. Lav det i ASP... langt lettere.
'søgestreng' = den tekst der er indstastet som der skal søges efter Find = der tildeles enkelte ord som der søges efter
Do While Instr('søgestreng'," ") Find = Left('søgestreng',INSTR('søgestreng'," ")-1) ... SELECT.... Where ..Data-base-felt.. Like "%" & Find & "%" ... Skriv alle resultater ... 'søgestreng' = Right('søgestreng',len('søgestreng')-(len(Find)+1)) Loop
Den burde kunne gøre det... Husk dog på, at hvis du vil søge i flere felter i din database, så skal du i SELECT sætningen tilføje søgningen med en OR for hvert felt der skal søges på. (Og husk det skal være tekst-felter....)
Hvordan du har tænkt dig at lave den der rutine i SP... Hmmmm... det ved jeg ikke, men den der skulle kunne gøre det i ASP. Jeg har ikke testet den, men håber da at det kører ;-)
God fornøjelse.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.