我有一个经常插入新数据的表。我需要获取表的最后一个ID。我怎样才能做到这一点?
类似于SELECT MAX(id) FROM table
吗?
如果您使用的是PDO,请使用PDO::lastInsertId
。
如果您使用的是Mysqli,请使用mysqli::$insert_id
。
如果您仍在使用Mysql:
请不要
mysql_*
在新代码中使用函数。它们不再维护,已正式弃用。看到
红色框了
吗?了解
准备的语句
来代替,并使用
PDO
或库MySQLi
-本文将帮助你决定哪些。如果您选择PDO,这是一个很好的教程。
但是,如果需要,请使用mysql_insert_id
。
问题内容: …并且该手册似乎表明您可以随时拨打电话,并且可以正常使用。但是这个… …似乎说明它必须在事务内。所以我的问题是:我可以在查询之前(只要没有交易)就等我想要的时间吗?面对许多并发连接,这可靠吗? 问题答案: PostgreSQL中的INSERT,UPDATE和DELETE具有RETURNING子句,这意味着您可以执行以下操作: 然后查询将为插入的每一行返回它为id插入的值。将往返保存到服
问题内容: 我想获取表中最后一个ID插入的值。我该怎么做? 问题答案: 好吧,我使用的解决方案是: 这将从插入数据库的最后一行获取id列:)
问题内容: 我正在使用PHP中的mvc结构,我想检索最后插入的行ID。 我创建了以下sql代码: 但不幸的是我遇到了这个错误: 我也尝试过此堆栈链接,但不适用于我,因此如果您能帮助我获取ID,我将非常高兴。 我也在这里共享我的controller.php文件。 问题答案: 你快到了。 如果您查看lastInsertId的手册页,则会在数据库句柄上调用它- 您当前正在语句中对其进行调用。 您只需要致
我需要一个MySQL函数,它可以在下面的SQL指令之后获取最后插入的id(不仅仅是最后一个)的列表: 更清楚地说,我想有这张桌子(我的桌子): 将在INSERT INTO语句之后复制新值,表现在显示如下: 此函数应返回以下列表:33,34,35 我认为一个临时解决方案是获取最后一个插入的id,然后根据复制的行数“手动”创建一个列表33、34、35。 但是我不知道是否存在SQL的本机函数!
问题内容: 当我插入一行时,表格的“ id”字段会自动增加。我想插入一行,然后获取该ID。 我会按照我说的去做,但是有没有办法我不用担心插入行和获取ID之间的时间呢? 我知道我可以在数据库中查询与输入的信息相匹配的行,但是变化很大,将有重复项,唯一的区别是id。 问题答案: 请参阅。 无论您做什么,都不要插入“ ”。就像您说的那样,这是比赛条件,没有必要。已经具有此功能。
问题内容: 我正在尝试获取类似mysql_insert_id()的mysql命令;它检索最后插入的行的auto_increment ID。我该怎么做才能在Java中获得它? 我的姓氏声明为INT。我不知道在rs.get中使用什么以及参数。 问题答案: 尝试使用别名