在运行查询时是否必须使用函数DB::raw
并且您没有在Laravel中使用流畅的查询构建器?
e.g。
$result = DB::select("SELECT * FROM users");
$result2 = DB::select(DB::raw("SELECT * FROM users"));
我在两种情况下得到相同的结果。那么为什么有必要使用DB::raw
?
答案 0 :(得分:3)
DB::raw()
用于制作未经解析的任意SQL命令 查询构建器的任何进一步。因此,它们可以通过SQL注入create a vector for attack。
检查此参考。链接,包含更多详细信息:http://fideloper.com/laravel-raw-queries
DB::raw
和DB::select
的