2011-12-08 35 views
12

クエリービルダーに対してrawQueryを使用する利点(またはその逆)rawQueryとdatabase.query

たとえば、SQLインジェクション攻撃(Webインサイトと同様に大きな問題はありませんが、SQLインジェクション+コンテンツプロバイダが問題になる可能性があります)をクエリービルダーが再度保護しますか?またはもう一方より速いのですか?

私はSQLにかなり満足しています(とにかくやりたいことがあれば十分です)ので、私はrawQuery(ソースコードを読むのが簡単です)に行く傾向がありますが、役に立つかもしれない何か。

答えて

8

提供されている方法でクエリを作成することは間違いありません。 SQLインジェクションからあなたを守るだけでなく、クエリーを作成するので、クエリー文字列を読みにくく、エラーを起こしやすくする文字列連結を避けることができます。パフォーマンス面では大きな違いはないと思います。

+0

提供されるメソッドでは、クエリビルダを意味しますか? – Mirko

3

可読性は、rawQueryの利点です。少なくとも私にとっては。

ご存じのように、パレート原則によれば、開発者はコードを読む時間の80%を費やします。したがって、読みやすさは非常に強力な議論です。

QueryBuilderではプレースホルダを使用する方法も提供されています(SQLインジェクションから保護する)。

希望に役立ちます。

関連する問題