プロジェクト名を持つプロジェクトのテーブルがあり、そのプロジェクト名には、特殊文字、英数字、または数字や特殊文字の任意の組み合わせが含まれる場合があります。
ここで、キーワード検索を適用する必要があり、検索に特殊文字が含まれている可能性があります。
私の質問は、データベース内の単一または複数の特殊文字を検索するにはどうすればよいですか?
Java休止状態APIでmysql 5.0を使用しています。
これは、クエリを簡単にサニタイズすることで可能になるはずです。
例: の検索は次のように\@(%*#$\
なります。
SELECT * FROM foo WHERE name LIKE "%\\@(\%*#$\\%";
評価されるとバックスラッシュがエスケープされるため、検索は最終的に含まれるものになります"\@(%*#$\"
一般に、文字列内の特殊文字はすべてバックスラッシュでエスケープできます。次のような名前がある場合にのみ、これは本当にトリッキーになります"\\foo\\bar\\"
:"\\\\foo\\\\bar\\\\"
補足として、ファイナライズする前に投稿を確認してください。質問のタイトルにスペルミスがあると、本当に気のめいるようになり、努力が不足していることがわかります。