Heim >Datenbank >MySQL-Tutorial >Wie entkomme ich einfache Anführungszeichen in SQL Server-Einfügungen?

Wie entkomme ich einfache Anführungszeichen in SQL Server-Einfügungen?

Barbara Streisand
Barbara StreisandOriginal
2025-01-23 22:56:10230Durchsuche

How Do I Escape Single Quotes in SQL Server Inserts?

Umgang mit einfachen Anführungszeichen in SQL Server-Einfügungen

Das Einfügen von Textdaten in SQL Server-Datenbanken erfordert einen sorgfältigen Umgang mit Sonderzeichen, insbesondere einfachen Anführungszeichen ('). Eine falsche Handhabung kann zu SQL-Syntaxfehlern führen.

Bedenken Sie diese problematische SQL-Anweisung:

<code class="language-sql">INSERT INTO my_table VALUES ('It's a test.');</code>

Das einfache Anführungszeichen in „It's“ beendet das Zeichenfolgenliteral vorzeitig und verursacht einen Fehler.

Die Lösung in SQL Server ist einfach: das einfache Anführungszeichen verdoppeln. Die korrigierte Aussage lautet:

<code class="language-sql">INSERT INTO my_table VALUES ('It''s a test.');</code>

Diese Technik entgeht dem einfachen Anführungszeichen innerhalb der Zeichenfolge, sodass die gesamte Zeichenfolge korrekt interpretiert werden kann.

Lassen Sie uns dies anhand eines praktischen Beispiels mit SQL Server veranschaulichen (die Version ist nicht kritisch, diese Methode funktioniert versionübergreifend):

<code class="language-sql">DECLARE @my_table TABLE (
    [value] VARCHAR(200)
);

INSERT INTO @my_table VALUES ('It''s a test with multiple ''quotes''.');

SELECT * FROM @my_table;</code>

Die Ausgabe wird korrekt angezeigt:

<code>value
------------------------------
It's a test with multiple 'quotes'.</code>

Dies zeigt, wie die Verdoppelung einfacher Anführungszeichen sie beim Einfügen in SQL Server-Zeichenfolgenliteralen effektiv behandelt. Dieser Ansatz vermeidet komplexere parametrisierte Abfragemethoden für dieses spezielle Problem.

Das obige ist der detaillierte Inhalt vonWie entkomme ich einfache Anführungszeichen in SQL Server-Einfügungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn