私は、準備文がデータベースへのSQLインジェクションを避けるための良い方法だと読んでいます。 問題は顧客が静かな変数UIを望んでいることです 彼は最初にテーブルを選択し、次にいくつかの制約を列とテキストで構成します。 だから基本的には(ナイーブ)最終生成物は、次のようになります。prepared statement/sql-injection preventation on変数
Select * from %TABLENAME% where %ATTRIBUTENAME% = %VALUE%
今の質問は、これは安全な取得する方法ですか?
私は、事前にすべてのテーブルのステートメントを作成するprepareステートメントソリューションを構築することができますが、これを維持するための努力は非常に静かなので、私はかなり馬鹿げたアイデアのように聞こえます静かないくつかのテーブル)。 可能な限り一般的な安全な方法でこれをどのように解決するか考えてみましょうか?
そして、はい、私は顧客に等しいが、negativなどの操作をしないために考えに来ることができることを知っているが、それはそうしてくださいなしanswesその主に私の悩みの少なくともありますここでの説明の弱点に焦点を合わせます。目的を少し簡略化したからです。 – Aeglasin
**文**は、通常、ユーザーからの入力がない場合にのみ使用されます。それ以外の場合は、** PreparedStatement **を使用します。適切な入力衛生状態であっても、** Statement **は安全ではありません。 –