我知道使用laravel查询构建器的原因之一是它始终使用PDO参数绑定来保护您的应用程序免受SQL注入攻击。因此它使查询安全,但如果我使用像DB :: select(“我的原始查询”)这样的东西会发生同样的事情,这就是Laravel网站上的基本用法。我只想知道使用Laravel Query Builder和Eloquent ORM将获得的其他优势。我对原始查询很好,但是如果使用查询生成器函数有很大的优点,比如table(),where()或者Where()等,那么我必须使用它们。
答案 0 :(得分:1)
使用查询生成器的主要好处是它使您摆脱了所选存储所使用的语言,即MySQL,Oracle,SQLite等。如果您切换数据库类型,则可能会遇到很多麻烦重构原始SQL。使用查询生成器时,在迁移到新数据库后无需更改查询。