Maison >base de données >tutoriel mysql >Comment échapper aux guillemets simples dans les insertions SQL Server ?

Comment échapper aux guillemets simples dans les insertions SQL Server ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-23 22:56:10156parcourir

How Do I Escape Single Quotes in SQL Server Inserts?

Gestion des guillemets simples dans les insertions SQL Server

L'insertion de données texte dans les bases de données SQL Server nécessite une gestion minutieuse des caractères spéciaux, en particulier des guillemets simples ('). Une mauvaise gestion de ceux-ci peut entraîner des erreurs de syntaxe SQL.

Considérez cette instruction SQL problématique :

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

Le guillemet simple dans "C'est" terminera prématurément la chaîne littérale, provoquant une erreur.

La solution dans SQL Server est simple : doublez le guillemet simple. La déclaration corrigée est :

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

Cette technique échappe au guillemet simple dans la chaîne, permettant à la chaîne entière d'être correctement interprétée.

Illustrons avec un exemple pratique utilisant SQL Server (la version n'est pas critique, cette méthode fonctionne sur toutes les versions) :

<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>

La sortie affichera correctement :

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

Cela montre comment le doublement des guillemets simples les gère efficacement dans les littéraux de chaîne SQL Server lors de l'insertion. Cette approche évite les méthodes de requête paramétrées plus complexes pour ce problème spécifique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn