Italian Caratteri non ammessi in SQLite

Fulvio75

Well-Known Member
Licensed User
Ciao a tutti,
ho un campo note da inserire in un campo testo di sqlite, ovviamente l'utente potrebbe inserire dei caratteri non ammessi tipo "" oppure '.
Ho messo questi caratteri in una list e quando vado a premere il bottone per salvare il record controllo che questi caratteri non siano nella stringa, la list è un array di strighe
Dim SpecialChar As List = Array As String ("*","!","'","£","$","%","&","/","(",")","^")
è un'idea giusta? si fa così?
Ora il problema è che le doppie virgolette non posso includerle in questi caratteri perché se aggiungo all'array """ sono 3 doppie virgolette e va in errore di sintassi.
Come si fa ad aggiungerle?
Grazie
 

LucaMs

Expert
Licensed User
Longtime User
Per il momento... non ho gran voglia di pensare
Intendevo dire che probabilmente c'è un modo migliore di "operare"; il Quote, aggiunto alla tua lista ed al tuo metodo, funzionerà.

Ma si potrebbe trovare un modo per impedire l'immissione di quei caratteri nella EditText, che sarebbe una soluzione migliore.
E per la eventuale eliminazione prima del salvataggio nel db, si potrebbe comunque usare Regex.
 

Lello1964

Well-Known Member
Licensed User
Longtime User
Uso da tempo Sqlite, se non sbaglio l'unico carattere non ammesso è ' apice.

Puoi fare l'escaping, io lo uso non ho mai avuto nessun problema.

B4X:
Sub SqlLite_Format(input As String) As String
    If input = Null Then Return ""
    Dim output = input.Replace("'","''") As String
    Return output
End Sub

tutti gli altri caratteri dovrebbero essere ammessi, per cui è inutile bloccarli.
 
Top