问题标签 [mysql-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 回答
12436 浏览

php - 替代“PDO::lastInsertId”/“mysql_insert_id”

我总是听说使用“lastInsertId”(如果您不使用 PDO,则使用 mysql_insert_id())是邪恶的。如果是触发器,显然是这样,因为它可能会返回完全不是您的 INSERT 创建的最后一个 ID 的东西。

有什么选择?

0 投票
4 回答
945 浏览

php - mysql_insert_id() 未能检索到自动增量 ID

我看到记录已创建,但无法检索 Id。

怎么了?

编辑

已修复,它是由 $row 引起的。

0 投票
2 回答
727 浏览

php - 您使用 mysql_error($con) 或 mysql_insert_id($con) 来检查插入结果吗?

上面将一些东西插入到一个表中。然后你可以检查它是否成功

或者

你的选择和理由是什么?

顺便说一句,以下在运行它们时是否仍然会获取 $id,我还没有尝试过:

0 投票
3 回答
163 浏览

mysql - 我正在尝试用一些数据填充 MySQL 表,但是,mysqli 不会让我每隔 10 条语句插入一次

我想用一些票 ID 初始化一个“票”表。为此,我想在表中插入 120 个工单 ID。但是,在每 10 条语句中,MySQL 都会告诉我 ID 已经存在,因此不会让我插入它。这是我的代码:

以下是代码中使用的函数:

这是返回到浏览器的日志:

TCKT00000000YDLO已添加到票务表中!

TCKT10000000YDLO 已添加到票务表中!

TCKT20000000YDLO 已添加到票务表中!

TCKT30000000YDLO 已添加到票务表中!

TCKT40000000YDLO已添加到票务表中!

TCKT50000000YDLO已添加到票务表中!

TCKT60000000YDLO已添加到票务表中!

TCKT70000000YDLO已添加到票务表中!

TCKT80000000YDLO已添加到票务表中!

TCKT90000000YDLO 已添加到票务表中!

TCKT10000000YDLO已经存在,所以不加了!

TCKT11000000YDLO 已添加到票务表中!

TCKT12000000YDLO 已添加到票务表中!

TCKT13000000YDLO已添加到票务表!

TCKT14000000YDLO已添加到票务表中!

TCKT15000000YDLO已添加到票务表中!

TCKT16000000YDLO已添加到票务表中!

TCKT17000000YDLO 已添加到票务表中!

TCKT18000000YDLO已添加到票务表中!

TCKT19000000YDLO 已添加到票务表中!

TCKT20000000YDLO已经存在,所以不加了!

0 投票
1 回答
821 浏览

php - Mysql_insert_id 与 Doctrine

我有几个表(mySQL)我想在 Doctrine 的帮助下更新。products 表 id 是自动递增的,下面是我想做的简要说明:

使用冲洗时如何做到这一点?使用常规保存是一种替代方法,但这样做时会有多个事务。我试图为教义找到一个 Mysql_insert_id 版本,但没有任何运气。

谢谢!

0 投票
4 回答
18396 浏览

php - 在使用 ON DUPLICATE KEY UPDATE 和 PHP 时获取 mysql_insert_id()

我已经找到了一些单独使用 mySQL 的答案,但我希望有人可以告诉我一种方法来获取使用 PHP 处理插入/更新时最后插入或更新的 mysql DB 行的 ID。

目前我有这样的东西,其中 column3 是唯一键,还有一个 id 列是自动递增的主键:

$my_id 在 INSERT 上是正确的,但在更新行时不正确(在 DUPLICATE KEY UPDATE 上)。

我看过一些帖子,有人建议你使用类似的东西

在调用 ON DUPLICATE KEY 时获取有效 ID 值——但这会将有效 ID 返回给 PHPmysql_insert_id()函数吗?

0 投票
2 回答
168 浏览

php - 关于我的代码中 mysql_insert_id() 应用程序的问题

我有一个页面,其中有一个if...else用于处理输入数据的循环,该页面在提交时被还原两次,即单击一个名为“继续”的按钮,第二次是“添加到购物车”......现在在这种情况下,当单击“继续”按钮时,将if执行循环,在该循环中将数据插入数据库中,并在刷新时显示所有输入数据,这一次获得了另一个按钮“添加到购物车”。 . 当点击添加到购物车时,else条件/循环部分中包含的代码被执行。

现在我的问题是,如果数据最初是If部分插入,然后再else执行,那么我可以使用mysql_insert_id()else 部分中的函数来获取最后插入到该if部分中的数据吗?

以下是我正在谈论的代码类型:

那么可以部分获取最后插入的idelse吗?

0 投票
1 回答
1448 浏览

php - PHP,MySql - 多个数据库连接和 mysql_insert_id()

我有 2 个数据库连接,我想从其中一个连接中获取最后插入的 ID。

我需要在 mysql_insert_id() 函数中指定任何内容吗?我一直在检索最后一个已知的 ID,我认为这是由于这个原因。

0 投票
5 回答
11755 浏览

php - 在 MYSQL 中使用 SELECT MAX(id) 而不是在 PHP 中使用 mysql_insert_id() 有多糟糕?

背景:我正在开发一个系统,开发人员似乎正在使用一个执行 MYSQL 查询的函数,就像"SELECT MAX(id) AS id FROM TABLE"他们需要获取最后插入行的 id(具有 auto_increment 列的表)一样。

我知道这是一种可怕的做法(因为并发请求会弄乱记录),我正试图将其传达给非技术/管理团队,他们的回应是......

我不同意任何一点,并认为我们会比我们计划的更早遇到这个问题。但是,我正在尝试计算(或计算一种机制)来计算在我们开始看到混乱的链接之前应该有多少用户使用该系统。

对此有任何数学见解吗?同样,我知道这是一种可怕的做法,我只想了解这种情况下的变量......


更新:感谢大家的评论——我们正朝着正确的方向前进并修复了代码!

0 投票
2 回答
1217 浏览

php - php:mysql_insert_id() 问题

php函数mysql_insert_id()可以在mysql db中处理INSERT查询后不返回结果吗?

只是为了澄清。生产站点上有一个由 cron 执行的脚本。它包含一个为用户生成发票的循环。每次迭代都包含一个 INSERT db 查询和查询之后的 mysql_insert_id() 操作 - 以获取生成的发票编号。在没有获取最后插入的数字的情况下执行了一组迭代。

它可能是由高数据库服务器负载或其他与php代码站点问题无关的原因引起的吗?

任何帮助,将不胜感激!