2012-03-30 10 views
1

私はクエリをどのように複雑に構築すべきかと思ったときにthis questionと読みました。SQLエスケープのルールは何ですか?

これまでは、StringBuilderを使用してストリングを作成しました。このアプリケーションでは、選択、更新、挿入、および削除のみが使用されています。今私はまた、私が自分自身に尋ねたときに正しい逃げについて疑問を抱きました。なぜ、逃げ出すだけで、これらの徴候を避けているのではないのですか。'これは\'です。

エスケープの背後にはさらに複雑な動作がありますか、これが完了しますか?

ありがとう!

答えて

2

String組み込みSQLは、SQLインジェクション攻撃を受けやすいため、悪い考えです。

クエリをストアドプロシージャに配置し、入力値をパラメータ化することができます。 SQLインジェクション攻撃に関する情報およびそれらを防ぐためにどのように、オープンWebアプリケーションセキュリティプロジェクトのサイトを参照してください

:それはまた、パフォーマンスのために悪いです

https://www.owasp.org/index.php/SQL_Injection_Prevention_Cheat_Sheet

+0

+1を、ストアドプロシージャのクエリ・プランを簡単にすることができ、一方、再使用。 – Bridge

関連する問題