ホームページ >データベース >mysql チュートリアル >大文字と小文字を区別しない検索に LIKE を含む準備済みステートメントを使用する方法

大文字と小文字を区別しない検索に LIKE を含む準備済みステートメントを使用する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-16 11:58:03401ブラウズ

How to Use Prepared Statements with LIKE for Case-Insensitive Searches?

準備されたステートメントと大文字と小文字を区別しない LIKE 検索

大文字と小文字を区別せずに準備されたステートメントを効率的かつ安全な LIKE 検索に活用するには、変数を SQL クエリに直接埋め込むことは避けてください。 代わりに、パラメータ化されたクエリを利用します。 その方法は次のとおりです:

プレースホルダーを使用して SQL クエリを構築します:

<code class="language-sql">SELECT * FROM `users` WHERE username LIKE ?;</code>

ワイルドカード (%) を前後に追加して変数を準備し、bind_param を使用してプレースホルダーにバインドします。 このメソッドは、大文字と小文字を区別しないマッチングを効果的に処理します。

<code class="language-php">$likeVar = "%{$yourParam}%";
$stmt->bind_param("s", $likeVar);</code>

このアプローチは、ユーザーが入力するとリアルタイムで結果を更新するプレーヤーのユーザー名検索機能などの動的なシナリオで特に重要です。 パラメーター化された LIKE 句を使用してステートメントを準備すると、SQL インジェクションの脆弱性が防止され、大文字と小文字を区別しない効率的な検索が可能になります。

以上が大文字と小文字を区別しない検索に LIKE を含む準備済みステートメントを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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