Query Dinamiche

Query Dinamiche

Con questo script si possono creare delle query dinamiche per cercare elementi "sparsi" nel testo contenuto in un campo di database.
Per esempio se nel campo "corpo" c'è il seguente testo:
"Bari, varata la legge per i patti territoriali, che incentiveranno lo sviluppo di imprese tecnologiche..."
Se ho una Textbox di ricerca in un form HTML dove posso scrivere qualsiasi cosa da ricercare tra i testi contenuti nel campo "corpo" tipo:

<input type="text" name="articolo">

se la sql normale è del tipo:

key=request.form("articolo")
sql="select * from art where corpo like '%" & key & "'%"

allora vediamo che succede alla ricerca della frase: "patti territoriali Bari"
la sql diventa: select * from art where corpo like '%patti territoriali Bari%'
che non dà alcun risultato perchè la frase non è compresa nel testo.
Allora dobbiamo usare questo trucchetto:

<%
key=request.form("articolo")
sost ="%' and corpo like '%"

key2 = Replace(key," " , sost)

sql="select * from art where corpo like '%"&key2&"%' order by data desc"

...
%>

così facendo la frase "patti territoriali di Bari" , viene spezzata e ogni spazio (blank) viene sostituito ,tramite la "Replace" , dalla frase "%' and corpo like '%" così la query diventa:
select * from art where corpo like'%patti%' and corpo like '%territoriali%' and corpo like '%Bari%'
che cerca le tre parole nel testo, così facendo non è importante l'ordine delle parole ma basta che esse siano presenti contemporaneamente nel testo.

Ti potrebbe interessare anche

commenta la notizia

C'è 1 commento
Redazione
Ti interessano altri articoli su questo argomento?
Chiedi alla nostra Redazione!