我发现使用流畅的驱动程序插入insert_get_id。 是否可以通过更新来获取ID?
我查了query.php,只有insert_get_id的功能吗? 我能获得更新的主要密钥返回的任何地方?
$update = DB::table($table)
->where('userid', '=', Session::get('userid'))
->update_get_id(Input::all());
该值仅返回1,意味着成功。 任何人都有解决方案来获得更新返回主ID?
我可以在query.php中为新函数update_get_id创建另一个函数吗? 谢谢。
答案 0 :(得分:0)
我用普通的MySQL做这个的方法是让我的表有一个唯一的索引,然后使用一个使用内置的last_insert_id()的insert语句,如下所示:
... on duplicate key update id = last_insert_id(id)
,然后insert_id应该反映受影响的行。
我似乎记得曾经读过,Eloquent目前没有通过api-methods对这样的东西提供任何开箱即用的支持,但也许有可能创建一个原始的sql语句,可以做到这一点特技。
实现此类自定义功能可能需要花费更多时间,而不是使用评论中的一些先前建议