ホームページ >データベース >mysql チュートリアル >SQLite INSERT ステートメントで一重引用符をエスケープするにはどうすればよいですか?
一重引用符を含む文字列値内で 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 サイトの他の関連記事を参照してください。