Maison >base de données >tutoriel mysql >Comment puis-je échapper aux guillemets simples dans les instructions SQLite INSERT ?

Comment puis-je échapper aux guillemets simples dans les instructions SQLite INSERT ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-15 09:48:44489parcourir

How Do I Escape Single Quotes in SQLite INSERT Statements?

Échapper aux guillemets simples dans les requêtes SQLite

Question

SQLite génère une erreur de syntaxe lors de l'exécution d'une instruction INSERT dans une valeur de chaîne contenant des guillemets simples. L'échappement des guillemets simples avec une barre oblique inverse (') ou une double barre oblique inverse (') ne résout pas ce problème.

Réponse

Pour échapper aux guillemets simples dans les requêtes SQLite, doublez les guillemets simples dans la valeur de la chaîne :

<code class="language-sql">INSERT INTO table_name (field1, field2) VALUES (123, 'Hello there''s');</code>

C'est parce que SQLite attend des guillemets simples comme délimiteurs pour les chaînes littérales, et cela est clairement indiqué dans sa documentation :

<code>字符串常量是用单引号 (') 括起来的字符串。字符串中的单引号可以通过连续使用两个单引号来编码——就像在 Pascal 中一样。不支持使用反斜杠字符的 C 样式转义,因为它们不是标准 SQL。</code>

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