ホームページ > データベース > mysql チュートリアル > SQLite INSERT ステートメントで一重引用符を適切にエスケープする方法

SQLite INSERT ステートメントで一重引用符を適切にエスケープする方法

Linda Hamilton
リリース: 2025-01-15 10:11:43
オリジナル
962 人が閲覧しました

How to Properly Escape Single Quotes in SQLite INSERT Statements?

SQLite クエリ内の単一引用符文字をエスケープします

SQLite データベースにデータを挿入する場合、構文エラーを防ぐために一重引用符などの特殊文字を適切にエスケープすることが重要です。よくある問題は、一重引用符を正しくエスケープできないことです。

たとえば、SQL クエリでは次のようになります。

<code class="language-sql">INSERT INTO table_name (field1, field2) VALUES (123, 'Hello there'\');</code>
ログイン後にコピー

エスケープ文字 '' が期待どおりに機能しません。一重引用符はエスケープされませんが、SQL では特殊文字として機能します。

回避策は、一重引用符を二重にすることです。 SQLite では、他の多くのデータベースと同様に、文字列内の単一引用符を表すために 2 つの連続した単一引用符 ('') を使用する必要があります。したがって、正しいクエリは次のようになります:

<code class="language-sql">INSERT INTO table_name (field1, field2) VALUES (123, 'Hello there''s');</code>
ログイン後にコピー

これにより、単一引用符文字がエスケープされ、データベースに正しく挿入されます。

SQLite のドキュメントによると、文字列定数は一重引用符で囲まれており、文字列内の一重引用符は 2 つの連続する一重引用符を使用してエンコードできます。 SQLite は、バックスラッシュ文字を使用した C スタイルのエスケープをサポートしていません。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート