PDA

View Full Version : [ACCESS 2007] cercare in un campo una stringa inserita parzialmente da tastiera


hardstyler
10-08-2009, 17:39
ciao a tutti!!!

sto scapottando ma sono sicuro che è semplicissimo!!!!

io devo cercare in un campo di una tabella in access 2007 una stringa inserita da tastiera e precisamente per semplificare:

ho numerosi record in questa tabella e io devo cercare all'interno del campo SITO che include il nome dei singoli siti web, per esempio un record ha il sito "hwupgrade.it", nel record successivo c'è il nome del sito "mariorossi.com" e così via....

Io voglio inserire da TASTIERA in una query a mò di criterio: =[Inserisci il nome del sito] senza dovergli dare l'intero sito, cioè, per visualizzarmi il record contenenente in quel dato campo hwupgrade.it io NON DEVO scrivere da TASTIERA hwupgrade.it ma basta SOLO hwupgrade

COME DIAVOLO SI FA???

nella guida ho trovato solo che per fare ciò che voglio fare io MA SENZA INSERIMENTO DI STRINGHE DA TASTIERA basta che nei criteri della query scrivo solamente hwupgrade* e poi li infatti mi trova hwupgrade.it ma se scrivo la seguente stringa nel campo criteri: =[inserisci il nome del sito]* lui non mi visualizza NULLA.

Ringrazio anticipatamente chi mi vorrà aiutare, so che è una cavolata, ne sono certo, ma non ne vengo fuori!!!

vorrei poter scrivere da tastiera, in definitiva, hwupgrade per trovarlo sia che nel campo sia scritto hwupgrade.it che www.hwupgrade.it

MarcoGG
11-08-2009, 09:21
nella guida ho trovato solo che per fare ciò che voglio fare io MA SENZA INSERIMENTO DI STRINGHE DA TASTIERA basta che nei criteri della query scrivo solamente hwupgrade* e poi li infatti mi trova hwupgrade.it ma se scrivo la seguente stringa nel campo criteri: =[inserisci il nome del sito]* lui non mi visualizza NULLA.

Ringrazio anticipatamente chi mi vorrà aiutare, so che è una cavolata, ne sono certo, ma non ne vengo fuori!!!

vorrei poter scrivere da tastiera, in definitiva, hwupgrade per trovarlo sia che nel campo sia scritto hwupgrade.it che www.hwupgrade.it


Potrebbe bastare un UNION tra 2 SELECT : la prima ce l'hai già, mentre alla seconda passi la stringa incompleta nella textbox, con il "www." iniziale. In altre parole, la battitura di testo nella textbox di ricerca produrrà 2 variabili, una che contiene il testo digitato, l'altra che concatena "www." all'inizio del testo digitato. Poi passi le 2 variabili come parametro alle due SELECT... :)

hardstyler
11-08-2009, 11:27
Potrebbe bastare un UNION tra 2 SELECT : la prima ce l'hai già, mentre alla seconda passi la stringa incompleta nella textbox, con il "www." iniziale. In altre parole, la battitura di testo nella textbox di ricerca produrrà 2 variabili, una che contiene il testo digitato, l'altra che concatena "www." all'inizio del testo digitato. Poi passi le 2 variabili come parametro alle due SELECT... :)

in pratica nella query di access che dovrei scrivere? perchè in fondo è un problema di sintassi e non ne vengo fuori :D

MarcoGG
11-08-2009, 11:54
in pratica nella query di access che dovrei scrivere? perchè in fondo è un problema di sintassi e non ne vengo fuori :D

La query è semplice :

SELECT * FROM nomeTabella
WHERE SITO LIKE [parametro1]
UNION
SELECT * FROM nomeTabella
WHERE SITO LIKE [parametro2]

Basta che tu passi al primo parametro il valore corrente della TextBox di ricerca con un carattere "*" concatenato a destra, mentre il parametro2 sarà la stessa stringa con un "www." concatenato a sinistra... ;)

hardstyler
11-08-2009, 13:00
La query è semplice :

SELECT * FROM nomeTabella
WHERE SITO LIKE [parametro1]
UNION
SELECT * FROM nomeTabella
WHERE SITO LIKE [parametro2]

Basta che tu passi al primo parametro il valore corrente della TextBox di ricerca con un carattere "*" concatenato a destra, mentre il parametro2 sarà la stessa stringa con un "www." concatenato a sinistra... ;)

ok, grazie! provero'!

hardstyler
15-08-2009, 15:04
in definitivo ho risolto con i filtri ma per fare quello che voglio anche se non è fondamentale è scrivere in sql....mi sfoglierò qualche buon librione!