Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Stringa SQL e apici

1,474 views
Skip to first unread message

Pierpaolo Villano

unread,
Aug 22, 2000, 3:00:00 AM8/22/00
to

Ho la seguente stringa nel mio codice asp:

SQL = "SELECT * FROM tabella WHERE Campo1='" & Request.Form("Campo1") & "'"

... ma il caso vuole che se il Request.Form("Campo1") contiene un'apice (ad
esempio : d'autunno) mi viene restituito un errore ... infatti la stringa
viene completata cosi':

SQL = "SELECT * FROM tabella WHERE Campo1='d'autunno'

... ed ovviamente il secondo apice "rompe" un po' ...

qualcuno di voi puo' consigliarmi su come ovviare al problema?

Grazie 1k,
Pierpaolo


Marcolongo Tiziana

unread,
Aug 22, 2000, 3:00:00 AM8/22/00
to

La sintassi SQL pretenderebbe la sostituzione dell'apice con il doppio apice.
In base a questo dovresti modificare la stringa Request.Form("Campo1")
rimpiazzando ogni occorrenza di singolo apice con un doppio apice.

Io preferisco invece usare questo metodo:

SQL= "SELECT * FROM tabella WHERE Campo1= " & chr(34) &
Request.Form("Campo1") & chr(34) & " "

che modifica solo il modo di scrivere la variabile SQL e non la variabile
stringa Request.Form("Campo1").

Ciao,
Tiziana

Pierpaolo Villano wrote:

--
----------------------------------------
Tiziana Marcolongo

Centro di Calcolo - Universita' di Udine
Tel: +39 0432 55 8901
Fax: +39 0432 55 8911
E-mail: tiz...@cc.uniud.it

-------********-------
Assistenza SPES
Tel: +39 0432 55 8915
E-mail: he...@spes.uniud.it
Assistenza Sindy
Tel: +39 0432 55 8915
E-mail: he...@sindy.uniud.it
----------------------------------------

Pierpaolo Villano

unread,
Aug 23, 2000, 3:00:00 AM8/23/00
to

Ho provato ... ma non funzia ... cmq ho rimediato con il metodo "Replace"!

Ciao e grazie,
Pierpaolo


Alexis Paul Bertolini

unread,
Aug 23, 2000, 3:00:00 AM8/23/00
to

Sostituisci l'apice singola con una doppia apice:

SQL = "SELECT * FROM tabella WHERE Campo1='" &

replace(Request.Form("Campo1");"'";"''") & "'"

--
___________________________________________________________

a p bertolini
"repetita juvant"
"repetita juvant"
(www.webwarrior.org)


Claudio

unread,
Aug 23, 2000, 3:00:00 AM8/23/00
to

> Ho la seguente stringa nel mio codice asp:
> SQL = "SELECT * FROM tabella WHERE Campo1='" & Request.Form("Campo1") &
"'"

Devi semplicemente raddoppiare gli apici che sono contenuti nella tua
stringa, puoi farlo molto semplicemente con una replace

campo1 = replace(request.form("campo1"),"'","''")
SQL = "SELECT * FROM tabella WHERE Campo1='" & Campo1 & "'"

Dove il primo valore di replace è la stringa in cui deve cercare, il secondo
è il carattere che deve essere sostiuito cioè ' e il terzo è il carattere
che verrà sostituito cioè '' (doppio apice singolo e non le vigolette ")

Vedrai che così funziona :)

Ciao Claudio

Pierpaolo Villano

unread,
Aug 23, 2000, 3:00:00 AM8/23/00
to

Funzia grazie 1k,
Pierpaolo


Pierpaolo Villano

unread,
Aug 23, 2000, 3:00:00 AM8/23/00
to

Perfetto Thanks,
Pierpaolo

Paolo Di Mauro

unread,
Mar 5, 2022, 6:24:02 AM3/5/22
to
Ottimo !
--
Newsgroup robomoderato - tutti gli articoli sono approvati automaticamente.
0 new messages