J'ai écrit le schéma de la base de données (une seule table jusqu'à présent) et les instructions INSERT pour cette table dans un fichier. Ensuite, j'ai créé la base de données comme suit:Caractère de guillemets simples d'échappement à utiliser dans une requête SQLite
$ sqlite3 newdatabase.db
SQLite version 3.4.0
Enter ".help" for instructions
sqlite> .read ./schema.sql
SQL error near line 16: near "s": syntax error
Ligne 16 de mon dossier ressemble à ceci:
INSERT INTO table_name (field1, field2) VALUES (123, 'Hello there\'s');
Le problème est le caractère d'échappement pour une seule citation. J'ai également essayé d'échapper deux fois la citation simple (en utilisant \\\'
au lieu de \'
), mais cela n'a pas fonctionné non plus. Qu'est-ce que je fais mal?
Aussi, pensez à utiliser lié paramètres si le langage hôte les supporte (la plupart le font, mais pas le shell SQLite). Le SQL serait alors 'INSERT INTO nom_table (field1, field2) VALUES (?,?)' Et les valeurs seraient fournies directement (et sans substitutions). –