【问题标题】:MySQL Insert, how to get incremental id from insert [duplicate]MySQL插入,如何从插入中获取增量ID [重复]
【发布时间】:2019-11-07 17:32:31
【问题描述】:
INSERT INTO db.a (a,b,c,d,e,f,g,h,i) 
VALUES (2,2,"a",'b','c','d',1,'e',0)

第一次插入将插入一个带有incremental_id 的新行。我需要使用该 incremental_id 并使用该 incremental_id 进入 db.b,例如,如果它是 6005,我将进行以下插入。

INSERT INTO db.b 
(a_id, s_id, use_i)
VALUES (6005,7,0)

如何自动获取第一个插入的 id,以便在第一个查询之后动态构建第二个插入?

【问题讨论】:

  • 使用LAST_INSERT_ID()函数。
  • 要添加到 @Barmar 的评论,您可能需要在插入 a 表后执行 SET @a_id = LAST_INSERT_ID(); 并在插入 s 表后使用 SET @s_id = LAST_INSERT_ID(); 并使用 INSERT INTO db.b (a_id, s_id, use_i) VALUES (@a_id,@s_id,0) 。 . 因为不清楚你是否有s 表,因为我看到s_id 我假设你也有一个s

标签: mysql


【解决方案1】:

您可以使用函数LAST_INSERT_ID(),它将准确返回您需要的内容。

【讨论】:

    猜你喜欢
    • 2019-01-16
    • 1970-01-01
    • 2014-01-20
    • 2014-04-18
    • 1970-01-01
    • 2012-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多