SQLインジェクション対策に使われるプレースホルダとは?

プレースホルダには静的プレースホルダと動的プレースホルダが存在する。

静的プレースホルダ

  • SQL 文の構文がバインド前に確定する
  • セキュリティの観点で、静的プレースホルダは最も安全

動的プレースホルダ

  • SQL 呼び出しごとに、パラメータをバインドした後の SQL 文がデータベースエンジンに送られる
  • バインド処理を実現するライブラリによっては、SQL 構文を変化させるような SQL インジェクションを許してしまう