Entfernen Sie das Apostroph (d.h. verdoppeln Sie das einfache Anführungszeichen) in Ihrem SQL:
INSERT INTO Person
(First, Last)
VALUES
('Joe', 'O''Brien')
/\
right here
Dasselbe gilt für SELECT-Abfragen:
SELECT First, Last FROM Person WHERE Last = 'O''Brien'
Das Apostroph oder einfache Anführungszeichen ist ein Sonderzeichen in SQL, das den Anfang und das Ende von Zeichenketten angibt. Das bedeutet, dass Sie es als Teil Ihrer literalen Zeichenkettendaten verwenden können, wenn Sie escape
das Sonderzeichen. Bei einem einfachen Anführungszeichen wird dies in der Regel durch Verdoppelung des Anführungszeichens erreicht. (Zwei einfache Anführungszeichen, nicht doppeltes Anführungszeichen anstelle eines einfachen Anführungszeichens).
Hinweis : Sie sollten sich über dieses Problem nur Gedanken machen, wenn Sie Daten manuell über eine Roh-SQL-Schnittstelle bearbeiten, da das Schreiben von Abfragen außerhalb der Entwicklung und des Testens nur selten vorkommen sollte. Im Code gibt es Techniken und Frameworks (abhängig von Ihrem Stack), die sich um das Escaping von Sonderzeichen kümmern, SQL-Einschleusung , usw.