问题标签 [last-insert-id]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
14547 浏览

java - 选择 LAST_INSERT_ID()

有人可以解释 MySQL 函数 LAST_INSERT_ID() 的工作原理吗?我正在尝试获取数据库中最后插入行的 id,但每次都得到 1。

我用的是mybatis。

示例查询是:

代码:

输出:

0 投票
2 回答
2013 浏览

mysql - Perl 和 MySQL - 使用 DBI 从表的最后一行返回一个字段,可能带有 last_insert_id?

我试图从表的最后一行返回一个成员firstname字段。usersusers

从上面返回此错误:

firstname那么,从表的最后一行获取字段的“最佳”方式是什么(最适合服务器、最快、最少的内存、负载、最少的开销……无论如何)users

意识到我上面的例子不应该被认真对待,因为我不知道如何做到这一点,而不仅仅是做一些像我的粗略但功能性的事情:(ps UserID 不是通过自动增量分配的,而是按数字顺序排列的,新用户得到更高的用户 ID。就像我解决预先存在的问题时那样。)

我假设因为我使用的 DBI 可能会提供最佳解决方案,但是我显然缺乏经验,需要一些建议和指导来学习正确的方法来做到这一点。感谢您的任何帮助。

0 投票
2 回答
8985 浏览

mysql - MYSQL:存储过程,插入一行,然后通过 LAST_INSERT_ID() 选择它

我正在尝试调用 AddCluster 女巫的存储过程调用参数“title”和“alt”

情况1:

如果“标题”在数据库中,则只需返回“旧”行!

案例二:

如果“标题”不在数据库中,那么,

根据 parmerer 'title' 和 'alt' 插入一行

然后通过 LAST_INSERT_ID() 选择新添加的行

问题出在案例 2 上,它只返回空!!

0 投票
1 回答
650 浏览

java - 获取事务中的所有插入 ID

我在 MySQL 数据库中有两个表:“messages”和“message_tags”。“messages”表有一个自动增量列“message_id”。在 Java 中,我想使用 java.sql 包向数据库添加一批消息。我想在一个事务中执行此操作以保存查询。

我的 SQL 代码应如下所示:

是否有可能以某种方式将所有新生成的 id 从消息表中返回给 java,使它们可以与原始消息匹配?像这样的东西:

0 投票
2 回答
1937 浏览

mysql - MySQL 从分配自动增量 ID 的表插入并在第三个表中更新 FK

我有 3 张桌子

我想复制old_customersnew_customers他们分配一个新的自动增量 id 并更新订单外键customer_id
如何在一个简单的 MySQL 查询中同时执行 INSERT 和 UPDATE?

一个基本的 psudo-sql 想法



一个星期后 ...

感谢收到的帮助,这是开发的 MySQL 解决方案:
创建一个声明 CURSOR 的 PROCEDURE,INSERT+UPDATE 在循环中获取结果

这是一个没有控制变量和标签的循环,正如我在Simple Cursor Traversal 2中发现的那样

0 投票
1 回答
367 浏览

database - flex 本地数据库 lastInsertId = 0

我创建了一个本地数据库,我正在尝试插入一些数据,但我得到了lastInsertId零?!我在哪里搞砸了!?

0 投票
1 回答
579 浏览

php - PHP PDO::lastInsertId() 和 ATTR_PERSISTENT

我和这个几乎有同样的问题

根据那篇文章,我知道 PDO::lastInsertId() 从不同的连接调用时是安全的。但是,如果您想在该连接期间使用 PDO::lastInsertId(),这是否意味着不应在 PDO 构造函数中使用PDO::ATTR_PERSISTENT => true

换句话说,如果我需要使用 PDO::lastInsertId() 是我的应用程序被迫忍受“每次脚本需要与数据库对话时建立新连接的开销”,如PDO Connections and Connection Management中所述。

0 投票
1 回答
65 浏览

mysql - 多个 mySQL 插入的问题

我正在构建一个简单的 cms,并尝试在用户注册时自动在数据库中创建一个附加项。代码工作得很好,第一个插入行,但是一旦我添加了第二个,它就停止工作了。我从 StackOverflow 获得了这个代码结构,我查看了其他网站,它似乎是正确的,但对于我的生活,我无法弄清楚什么是错的。有什么建议么?

0 投票
3 回答
345 浏览

php - 如何从事务中的特定查询中检索 last_insert_id?

我有一个包含三个查询的 mysql 事务

在第三个查询中,我试图从前两个查询中提取 last_insert_id 值。

但它不起作用。有什么建议么?

0 投票
4 回答
8167 浏览

mysql - Mysql 在存储过程中使用 LAST_INSERT_ID

我需要根据插入另一个主表的最后一个 id 创建一个表,为此我创建了以下存储过程:

但问题是只插入第一条记录,建表失败。我哪里失败了?