ホームページ >データベース >mysql チュートリアル >SQLite INSERT ステートメントで一重引用符をエスケープするにはどうすればよいですか?

SQLite INSERT ステートメントで一重引用符をエスケープするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-15 09:48:44492ブラウズ

How Do I Escape Single Quotes in SQLite INSERT Statements?

SQLite クエリで一重引用符文字をエスケープする

質問

一重引用符を含む文字列値内で INSERT ステートメントを実行すると、SQLite は構文エラーをスローします。バックスラッシュ (') または二重バックスラッシュ (') を使用して一重引用符をエスケープしても、この問題は解決されません。

答え

SQLite クエリで一重引用符文字をエスケープするには、文字列値の一重引用符を 2 重にします:

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

これは、SQLite が文字列リテラルの区切り文字として一重引用符を想定しているためであり、これはドキュメントに明確に記載されています:

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

以上がSQLite INSERT ステートメントで一重引用符をエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。