Gambas-it

Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: doublemm - 02 Giugno 2010, 16:33:35

Titolo: [RISOLTO]problema con select from con campi con apici
Inserito da: doublemm - 02 Giugno 2010, 16:33:35
buon 2 giugno a tutti.
mi trovo con questo riga di comando:
Codice: [Seleziona]
sql = "SELECT*FROM DESCRIZIONE WHERE descrizione like '" & ComboDescrizione.text & "'"

se combodescrizione contiene un testo con un apice ' mi da errore
Titolo: Re: problema con select from con campi con apici
Inserito da: Ceskho - 02 Giugno 2010, 16:34:54
Prova ad utilizzare un replace prima di selezionare dalla tabella eliminando il carattere apice.
Titolo: Re: problema con select from con campi con apici
Inserito da: doublemm - 02 Giugno 2010, 16:52:15
ho provato a sostituire "'" con " " non da più errore ma non trova la stringa nella tabella perchè l'apice è tra due parole tipo:

CAFFE' LAVAZZA = errore nell'esecuzione
CAFFE LAVAZZA <> CAFFE' LAVAZZA

Titolo: Re: problema con select from con campi con apici
Inserito da: Ceskho - 02 Giugno 2010, 16:54:08
Devi sapere che su Linux se abiliti il Caps Lock, puoi scrivere le lettere maiuscole accentate. Ad esempio se abiliti il Caps Lock e premi il tasto dove c'è c'è l carattere "è" avrai magicamente "È"

In questo modo puoi ovviare al tuo problema senza mettere mano al codice...
Titolo: Re: problema con select from con campi con apici
Inserito da: doublemm - 02 Giugno 2010, 16:57:15
però ho visto che se uso upper$(è) il carattere rimane "è". Devo pensare ad un modo per evitare l'inserimento di caratteri sbagliati da parte di terzi utenti poi rimane il problema dell'apostrofo
Titolo: Re: problema con select from con campi con apici
Inserito da: ealmuno - 02 Giugno 2010, 17:00:17
Puoi fare un controllo al momento dell'inserimento, se è errato basta che gli scrivi che il carattere ' non è consentito.
Titolo: Re: problema con select from con campi con apici
Inserito da: Ceskho - 02 Giugno 2010, 17:04:12
però ho visto che se uso upper$(è) il carattere rimane "è". Devo pensare ad un modo per evitare l'inserimento di caratteri sbagliati da parte di terzi utenti poi rimane il problema dell'apostrofo

Puoi fare in modo che prima d inserire i dati nel database sia il tuo codice a sostituire il carattere "E'" con "È"
Titolo: Re: problema con select from con campi con apici
Inserito da: doublemm - 02 Giugno 2010, 17:07:58
comunque mi sembra brutto non poter usare l'apostrofo. Deve esserci un modo per ricercare in sql
una parola contenente apici
Titolo: Re: problema con select from con campi con apici
Inserito da: Ceskho - 02 Giugno 2010, 17:13:56
Allora: dopo una ricerca pare che tu abbia solo sue modi per risolvere il tuo problema....

1) usi il replace come abbiamo detto fin ora....è la soluzione più indolore che tu possa scegliere

2) invece della creazione inline della ricarca sei costretto ad usare i parametri...
Ad esempio: http://www.visual-basic.it/articoli/mbSetParSql.htm
Titolo: Re: problema con select from con campi con apici
Inserito da: milio - 02 Giugno 2010, 17:32:19
Scusate l'intromissione...

se io ho nella combo una stringa di questo genere "L'altro ieri" basta che faccio in questo modo:

Codice: [Seleziona]
Connection.Exec("SELECT * FROM Tabella WHERE Descrizione LIKE '" & Replace(MiaStringa, "'", "''") & "';"

In definitiva gli apici vanno raddoppiati :)

Titolo: Re: problema con select from con campi con apici
Inserito da: doublemm - 02 Giugno 2010, 17:43:50
non è giusto vengo qui per scrivere che ho trovato la soluzione e trovo che milio l'ha già scritta  ;D

grazie a tutti cmq
anche a te ceskho che mi hai dato un po di roba da leggere ???
Titolo: Re: [RISOLTO]problema con select from con campi con apici
Inserito da: milio - 02 Giugno 2010, 17:46:57
 :P
Titolo: Re: problema con select from con campi con apici
Inserito da: Ceskho - 02 Giugno 2010, 18:08:48
anche a te ceskho che mi hai dato un po di roba da leggere ???

Io sono come le maestre...do sempre qualcosa da fare a casa!!! :P