【问题标题】:For the method PDO::lastInsertId(), what do they mean by the argument "sequence name"? (PHP - PDO)对于 PDO::lastInsertId() 方法,参数“序列名称”是什么意思? (PHP-PDO)
【发布时间】:2011-08-14 23:13:05
【问题描述】:

我正在尝试使用 PDO 的 lastInsertId 方法,但文档指出,对于某些 rdbms,我需要一个序列名称作为参数。只熟悉mysql,不太清楚什么是sequence name。它们是指包含自动增量 ID 的列的名称吗?这是该方法的文档:

http://php.net/manual/en/pdo.lastinsertid.php

任何有关这方面的信息将不胜感激。谢谢。

【问题讨论】:

    标签: php pdo lastinsertid


    【解决方案1】:

    您可以像这样创建一个命名序列,而不是拥有一个主键 auto_incrementing(即 MySQL):

    CREATE SEQUENCE a_sequence INCREMENT BY 5 START WITH 30
    

    所以你会有一个包含这些值的列:30、35、40...等等。lastInsertId 方法应该获取最后一个序列值。

    【讨论】:

    • 知道了,所以序列和使用序列的列是两个独立的东西。谢谢!
    • 当您在 postgres 中使用“串行”数据类型和各种其他主键时,它们也会自动为它们创建序列。
    • CREATE SEQUENCE 在 Mysql 中?
    猜你喜欢
    • 2011-02-10
    • 2012-07-09
    • 1970-01-01
    • 2016-10-12
    • 1970-01-01
    • 1970-01-01
    • 2012-10-09
    • 2012-07-29
    相关资源
    最近更新 更多