SQLインジェクション

意外と見落としがちなのが、LIKE条件に用いられる入力文字列で "%"とか"_"などの、振る舞いに影響を与える文字列。ユーザーテーブルがまるっと見えてしまう、ということにはならないのだが、たとえば LIKE "%$hoge%" なケースの部分一致の場合、BlankOrNullチェックを実施しているだけでは不完全で "%" が入ってくるケースとか "_"が入ってくるケースとかを想定しないと、FULL ROWの取り出しが走る可能性がある(想定しているより多い件数が取得される可能性がある)。

これで重くなったり、見せたくなかったはずのレコードが見られたりという状況はあるので、危機認識はしておくべきだろうと思う。

もう少し特殊なケースだと入力文字列を正規表現に使うケース(検索条件として使うケース)がある。