我一直在想什么时候用哪一个,如果我应该两个都用。一直在看Laravel文档,它们都在里面。从我所能做的来看,DB::insert()比DB::table()->insert()提供了更多“定制”的查询。当涉及到如何以及何时使用哪一个时,有没有人能够澄清这两个到底有什么区别?
DB::insert()
DB::table()->insert()
yrefmtwq1#
DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle']);
DB::table('users')->insert( ['email' => 'john@example.com', 'votes' => 0] );查询构建器将条件编译为原始sql查询,但我正在使用它,因为它方便得多。
DB::table('users')->insert( ['email' => 'john@example.com', 'votes' => 0] );
lstz6jyr2#
你总是尽可能多地使用查询生成器,它可以防止SQL注入。
查询生成器还可以帮助处理特殊字符,如值中的“,“。对于原始语句,您需要自己处理特殊字符。
sr4lhrrt3#
公共函数addsubEmployee(请求$reqest){
Sub_employee::create([ "se_name"=> $reqest->se_name, ]); return redirect()->route("subEmployee"); }
3条答案
按热度按时间yrefmtwq1#
DB::insert()
用于原始SQL查询。示例:DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle']);
DB::table()->insert()
用于查询生成器。示例:DB::table('users')->insert( ['email' => 'john@example.com', 'votes' => 0] );
查询构建器将条件编译为原始sql查询,但我正在使用它,因为它方便得多。
lstz6jyr2#
你总是尽可能多地使用查询生成器,它可以防止SQL注入。
查询生成器还可以帮助处理特殊字符,如值中的“,“。对于原始语句,您需要自己处理特殊字符。
sr4lhrrt3#
公共函数addsubEmployee(请求$reqest){