Laravel SelectRaw vs DB:Raw

时间:2015-12-22 05:17:48

标签: database laravel laravel-5 sql-injection

首先

 DB::table('someTable')
->selectRaw('count(*), min(some_field) as someMin, max(another_field) as someMax')
->get();

第二

DB::table('someTable')->select(
array(
        DB::raw('min(some_field) as someMin'),
        DB::raw('max(another_field) as someMax'),
        DB::raw('COUNT(*) as `count`')
    )
)->get()
  

以上两个查询结果是一样的,但我的问题是有的   如果我有这两个查询的可能的安全问题(SQL注入)   直接在条件的地方使用用户输入。

1 个答案:

答案 0 :(得分:2)

根据Laravel' documentation

  

注意:Laravel查询构建器使用PDO参数绑定进行保护   您的应用程序针对SQL注入攻击。没有必要   清理字符串作为绑定传递。