首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel DB::insert()和DB::table()->insert()的区别

问Laravel DB::insert()和DB::table()->insert()的区别
EN

Stack Overflow用户
提问于 2016-08-24 17:07:56
回答 2查看 45.2K关注 0票数 12

我一直在试图弄清楚什么时候应该使用哪一个,以及我是否应该同时使用这两个。

我一直在看拉威尔的文档他们都在里面。据我所知,与DB::table()->insert()相比,DB::insert()提供了更多的“定制”查询。

当涉及到如何以及何时使用哪一个时,有人能够澄清这两者的确切区别是什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-24 17:17:05

raw sql queries的

  • DB::insert()。示例:

query builder的DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle']);

  • DB::table()->insert()。示例:

DB::table('users')->insert( ['email' => 'john@example.com', 'votes' => 0] );

查询构建器将条件编译为原始sql查询,但我之所以使用它,是因为它更方便。

票数 38
EN

Stack Overflow用户

发布于 2018-11-01 09:51:47

您总是尝试尽可能多地使用查询生成器,它可以防止SQL注入。

Laravel查询生成器使用PDO参数绑定来保护您的应用程序免受SQL注入攻击。不需要清理作为绑定传递的字符串

查询构建器还可以帮助值中的特殊字符,如',“。对于raw语句,您需要自己处理特殊字符。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39118995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档