ホームページ >データベース >mysql チュートリアル >MySQL クエリで特殊文字を適切にエスケープするにはどうすればよいですか?
MySQL クエリでの特殊文字のエスケープ
特殊文字を含む MySQL クエリを構築する場合、構文エラーを避けるために特殊文字をエスケープすることが重要です。特殊文字は悪意のある目的に悪用される可能性があるため、ユーザー入力を扱う場合、これはさらに重要になります。
次の例を考えてみましょう。
select * from tablename where fields like "%string "hi" %";
このクエリでは、二重引用符で囲まれています。文字列「hi」は文字列自体の一部として解釈され、構文エラーが発生します。
エスケープ要件
必要な特定のエスケープ シーケンスは、使用されている特殊文字によって異なります。 MySQL は次のエスケープ シーケンスを認識します:
ソリューション
クエリ例の二重引用符をエスケープするには、クエリを次のように記述する必要があります。次のように:
select * from tablename where fields like '%string \"hi\" %';
または、一重引用符を文字列として使用できます。区切り文字:
select * from tablename where fields like '%string ''hi'' %';
このアプローチでは、文字列内の単一引用符をエスケープする必要がなくなるため、エスケープが簡素化されます。
以上がMySQL クエリで特殊文字を適切にエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。