【问题标题】:How do I reference a row immediately after it has been added to a table? [duplicate]如何在将行添加到表后立即引用它? [复制]
【发布时间】:2013-10-03 05:08:50
【问题描述】:

这是 PHP / CodeIgniter / MySQL

我能想到的唯一方法是执行插入 ($this->db->insert(...)),然后立即运行另一个查询以再次查找记录。

我希望有一些东西(这对我来说似乎更有效率)可以返回新添加记录的主键(或其他东西)。

【问题讨论】:

  • 我不知道codeigniter,但通常有类似lastInsertId()的函数
  • mysqli_insert_id() 会给你最后插入的行的 id。
  • CodeIgniter 好像是$this->db->insert_id()
  • CodeIgniter 的文档非常好。如果您打算使用 CodeIgniter,那么没有理由不利用它。

标签: php sql codeigniter


【解决方案1】:

对于代码点火器

$this->db->insert_id()

【讨论】:

    【解决方案2】:

    看看这里http://ellislab.com/codeigniter/user_guide/database/helpers.html,第一个函数是$this->db->insert_id();

    这也适用于 activerecord 插入。

    或者你可以这样做

    $last_insert_id = $this->db->call_function('insert_id');  
    

    【讨论】:

      猜你喜欢
      • 2021-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-14
      • 1970-01-01
      • 1970-01-01
      • 2022-08-03
      相关资源
      最近更新 更多