2017-12-21 43 views
1

Ich versuche, einfache Anführungszeichen in meine DB hinzuzufügen, aber wenn ich die einfachen Anführungszeichen in der DB verdopple, bekomme ich kein einziges Zitat, um zu erscheinen? Lesen dieses Dokuments: How to properly escape a single quote for a SQLite database?Einfache Anführungszeichen für sqlite3 aus der Shell Escape

Ich konnte das einfache Angebot nicht erfolgreich hinzufügen. Ich bin über SSH eingeloggt, also bin ich mir nicht sicher, ob das der Grund ist? Vielleicht ist noch etwas anderes dabei?

Mein Befehl Einfügen:

sqlite3 /db.sql 'insert into `custqueue` values ("2", "take''that", "2")'; 

Meine Auswahl (Read) Antwort:

2|takethat|2 

Ich habe meine Apostroph in takethat nicht?

Antwort

1

bash erlaubt kein einfaches Zitat zwischen einfachen Anführungszeichen; Jedes einzelne Anführungszeichen beendet die Zeichenfolge in Anführungszeichen. So ein Apostroph in SQL zu erhalten, haben Sie einen Apostroph verwenden, um die Zeichenfolge zu beenden, schreiben einen entflohenen Zitat, und dann einen anderen Apostroph verwenden, um die restlichen Zeichenfolge in Anführungszeichen zu starten:

sqlite3 dbfile 'INSERT INTO tab VALUES(2, "take'\''that", 2);' 
+0

Zeit eine meiner Bilder Wiederherstellung um davon zu booten, aber einmal getan, wird dies ein Erfolg! Danke, sehr geschätzt – irishwill200

+0

Arbeitete einen Charme! Vielen Dank – irishwill200

Verwandte Themen