ホームページ > データベース > mysql チュートリアル > 構文エラーを避けるために MySQL クエリ内の特殊文字をエスケープするにはどうすればよいですか?

構文エラーを避けるために MySQL クエリ内の特殊文字をエスケープするにはどうすればよいですか?

DDD
リリース: 2024-12-18 20:54:11
オリジナル
389 人が閲覧しました

How Do I Escape Special Characters in MySQL Queries to Avoid Syntax Errors?

MySQL クエリでの特殊文字のエスケープ

問題:

特殊文字を含む SQL クエリを構築する場合文字を使用すると、構文エラーが発生する可能性があります。たとえば、次のようなクエリ:

select * from tablename where fields like "%string "hi"  %";
ログイン後にコピー

はエラーになります:「SQL 構文にエラーがあります...」

解決策:

この問題を解決するには、クエリ内の特殊文字をエスケープする必要があります。 MySQL はさまざまなエスケープ シーケンスを認識します。

  • : ASCII NUL
  • ': 一重引用符
  • ": 二重引用符
  • b: バックスペース
  • n: 改行
  • r: キャリッジreturn
  • t: Tab
  • Z: ASCII 26
  • \: バックスラッシュ
  • %: パーセンテージ
  • _:アンダースコア

例:

上記のクエリを修正するには、二重引用符をエスケープする必要があります:

select * from tablename where fields like "%string \"hi\" %";
ログイン後にコピー

注: 文字列区切り文字として二重引用符を使用することは標準 SQL ではありません。一重引用符を使用することをお勧めします。代わりに、クエリを簡素化します:

select * from tablename where fields like '%string "hi" %';
ログイン後にコピー

以上が構文エラーを避けるために MySQL クエリ内の特殊文字をエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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