当前位置: 首页 > 知识库问答 >
问题:

使用laravel Firstor新方法插入数据时,如何查找最后插入的id

齐乐逸
2023-03-14

我使用laravel firstOrNew方法插入数据。当数据不在表中时,它将插入数据。插入数据后,我无法获取上次插入的id。

前任:

   $user = User::firstOrNew(['id'=>1]);
   $user->name='prasanna';
   $user->save();
   dd($user->id); //it prints true,  here i need last inserted  id 

共有1个答案

万俟旭
2023-03-14

使用firstOrCreative代替firstOrNew

firstOrNew在未调用save()之前不会持久化,因此它不会返回$user-

firstOrNew返回

return new static($attributes); 

并返回

return static::create($attributes);

阅读差异

 类似资料:
  • 我插入批量插入laravel 5像这样: 知道如何获取最后一个插入的id吗?

  • 问题内容: 我正在将PHP PDO与PostgreSQL一起用于新项目。 给定以下功能,如何返回刚刚插入的行的ID?它不像现在那样工作。 问题答案: 从手册: 根据基础驱动程序,返回最后插入的行的ID或序列对象的最后一个值。例如,PDO_PGSQL()要求您为name参数指定序列对象的名称。 应该是这样的: [编辑]更新文档链接

  • 问题内容: 我正在使用PHP中的mvc结构,我想检索最后插入的行ID。 我创建了以下sql代码: 但不幸的是我遇到了这个错误: 我也尝试过此堆栈链接,但不适用于我,因此如果您能帮助我获取ID,我将非常高兴。 我也在这里共享我的controller.php文件。 问题答案: 你快到了。 如果您查看lastInsertId的手册页,则会在数据库句柄上调用它- 您当前正在语句中对其进行调用。 您只需要致

  • 问题内容: 我想在Hibernate中获取最后插入的值的ID。 搜索后: 但是以下代码给了我这个错误: java.lang.ClassCastException:无法将java.math.BigInteger强制转换为java.lang.Long 请分享您的想法! 解 不要忘记导入: 导入java.math.BigInteger; 问题答案: 错误很明显。它回来了而不是 您必须将其分配给。从中得到

  • 我有一个MySQL数据表,详细信息如下: 它正在工作,只是我正在尝试在插入数据后从数据库中获取id号。我该怎么做?

  • 问题内容: 我有一个插入查询(活动记录样式),用于将表单字段插入到MySQL表中。我想获取插入操作的最后一个自动递增的ID作为查询的返回值,但是我有一些问题。 控制器内部: 而内部模型: 作为模型中add_post的返回,我一无所获 问题答案: 尝试这个 如果有多次插入,您可以使用