Interpretare stringa SQL
Moderatore: ILVG mod
-
- Advertisement
6 messaggi
• Pagina 1 di 1
Interpretare stringa SQL
...ma ciao!
ho un campo testuale in cui l'addetto mi inserisce un filtro in questa maniera:
Sfruttando operatori logici AND OR e parentesi a piacimento.
Devo interpretare questa stringa per fare una select su un database utilizzando l'operatore Like.
Qualche suggerimento su come fare?
ho un campo testuale in cui l'addetto mi inserisce un filtro in questa maniera:
- Codice: Seleziona tutto
Luca AND (Marco OR Gigi)
Sfruttando operatori logici AND OR e parentesi a piacimento.
Devo interpretare questa stringa per fare una select su un database utilizzando l'operatore Like.
Qualche suggerimento su come fare?
..ma ciao!


-
gepponline - Moderatore
- Messaggi: 2149
- Iscritto il: ven gen 28, 2005 11:27 am
- Località: Monticello Brianza
Advertisement
Re: Interpretare stringa SQL
Se ti riferisci alla sintassi SQL, potrebbe essere:
- Codice: Seleziona tutto
SELECT TabUSer.[user], *
FROM TabUSer
WHERE user='gigi' AND ('marco' OR 'gigi');
-
nicola - Moderatore
- Messaggi: 1525
- Iscritto il: gio gen 08, 2004 3:30 pm
- Località: Ferrara
Re: Interpretare stringa SQL
ecco..immaginavo di non essere stato chiaro.
Il problema non è come interpretarla in SQL, ma come trasformare quella stringa in una stringa WHERE con la sintassi corretta per SQL utilizzando LabVIEW.
Quindi discriminare cio' che è tra parentesi da cos anon lo è e identificare i valori.
Quindi do in pasto al mio VI la stringa
Luca AND (Marco OR Gigi)
E devo ottener ein output:
WHERE INTERV1.USER Like '%Luca%' AND (INTERV1.USER Like '%Marco%' OR INTERV1.USER Like '%Gigi%')
gli OR, gli AND e le parentesi possono essere quanti si vuole.
Il problema non è come interpretarla in SQL, ma come trasformare quella stringa in una stringa WHERE con la sintassi corretta per SQL utilizzando LabVIEW.
Quindi discriminare cio' che è tra parentesi da cos anon lo è e identificare i valori.
Quindi do in pasto al mio VI la stringa
Luca AND (Marco OR Gigi)
E devo ottener ein output:
WHERE INTERV1.USER Like '%Luca%' AND (INTERV1.USER Like '%Marco%' OR INTERV1.USER Like '%Gigi%')
gli OR, gli AND e le parentesi possono essere quanti si vuole.
..ma ciao!


-
gepponline - Moderatore
- Messaggi: 2149
- Iscritto il: ven gen 28, 2005 11:27 am
- Località: Monticello Brianza
Re: Interpretare stringa SQL
Immaginavo, dovresti giocarci un po usando search and replace string, tasto destro spunti regular expression.
Ti allego un esempio, da completare che usa Replace STring in modalità regular espression.
Trovi anche una tabella con le codifiche regex
Buon lavoro Geppo
Il regular Expression (anche il match regular expression) usa il PCRE (Perl Compatible Regular Expression) quindi puoi usare i regex, a questo punto ti trovi un mare di info su internet per fare il parse di una stringa usando regex pcre.Questa l'ho imparata mentre cercavo qualcosa per aiutarti
Ti allego un esempio, da completare che usa Replace STring in modalità regular espression.
Trovi anche una tabella con le codifiche regex
Buon lavoro Geppo

- Allegati
-
ReplaceSTringForSQL.vi
- (9.48 KiB) Scaricato 220 volte
-
nicola - Moderatore
- Messaggi: 1525
- Iscritto il: gio gen 08, 2004 3:30 pm
- Località: Ferrara
Re: Interpretare stringa SQL
Sapevo di dover giocar eun po' con le stringhe ma non riuscivo a trovare la chiave per evitare problemi con parentesi annidate ecc.
Alla fine ho risolto cosi' e pare funzionare.
Alla fine ho risolto cosi' e pare funzionare.

..ma ciao!


-
gepponline - Moderatore
- Messaggi: 2149
- Iscritto il: ven gen 28, 2005 11:27 am
- Località: Monticello Brianza
6 messaggi
• Pagina 1 di 1
Chi c’è in linea
Visitano il forum: Nessuno e 4 ospiti