Dopo una notte un poco agitata alla mia età occorre coricarsi presto, che già così poi il giorno dopo si ragiona poco figurarsi...
Ciò premesso soddisfatto di aver (spero) compreso il funzionamento di (
') in
SQL cerco sulla base della spiegazione di
milio sullo 'slash rovesciato' (che se non ho frainteso in pratica permette di fasciare la stringa SQL con doppie virgolette (
“) senza interferire con Gambas), di spiegarmi il perché SQL, almeno in SQLite3, ritorna i dati corretti.
Quindi ho interrogato attraverso il Browser SQLite Così:
SELECT *
FROM miaTabella
WHERE Tab_Naz =
"'Pol'onia'";
mi da No error ma non ritorna nulla!
SELECT *
FROM miaTabella
WHERE Tab_Naz =
'Pol`onia';
mi da No error ma non ritorna nulla!
SELECT *
FROM miaTabella
WHERE Tab_Naz =
"Italia";
No error e ritorna i dati corretti!
SELECT *
FROM miaTabella
WHERE Tab_Naz =
'Pol''onia';
No error e risultati corretti!
Invece(!?) per quanto riguarda Quote() non ho capito cosa fa alla stringa in pratica
e pertanto per ora ho lasciato perdere.
Penso che, se quanto detto non è un monte di sciocchezze, questo rafforzi, ammesso che ce ne fosse stato bisogno visto chi ha suggerito la soluzione!, che la scelta di portare l'apice(
') a due apici (
'') è la migliore.
PS: In un post precedente rispondendo a
milio mi sono espresso in modo poco corretto nei confronti di SQLite definedolo 'infido', chiedo umilmente scusa perché l'aggettivo risulta offensivo anche se io intendevo solo mettermi ed eventualmente mettervi in guardia su un comportamento che dettato senz'altro da buone intenzioni come favorire l'utente poteva però indurre all'errore le persone poco esperte come il sottoscritto.
Ritengo SQLite un DB fantastico e sono entusiasta di poterlo usare e maltrattare a piacimento. Viva SQLite e i suoi autori