【问题标题】:MySql Insert and Select All In OneMySql 插入和全选合二为一
【发布时间】:2013-03-01 13:54:44
【问题描述】:

我想要做的是在表中插入一条记录,并在同一个查询中的 select 语句中返回主键。主键是一个自动增量,我想将此值发送到另一个函数。

【问题讨论】:

  • 那你到底“喜欢”怎样做呢?
  • 您可以使用 LAST_INSERT_ID() 函数获取最后插入的增量 ID

标签: mysql select insert


【解决方案1】:

您不能在一个查询中同时执行这两项操作。您可以在第二个查询中使用 LAST_INSERT_ID()

INSERT INTO tableA(rowA, rowB) VALUES('a', 'b');

SELECT * FROM tableB WHERE rowID = LAST_INSERT_ID();

【讨论】:

    【解决方案2】:

    如果是新数据行,您可以创建一个插入并返回 Id 值的函数,如下所示:

    CREATE FUNCTION INSERTANDRETURN(Data to enter as parameters)
      RETURNS INT
      DETERMINISTIC
       BEGIN
        DECLARE id INT;
        -- Insert data
        SET id = last id according to Maxvalue or last inserted data
        RETURN id;
       END
    

    请参阅documentation 了解有关过程和功能的进一步阅读

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-20
      • 1970-01-01
      • 1970-01-01
      • 2014-05-15
      • 2015-02-07
      • 2015-12-28
      • 1970-01-01
      • 2017-08-13
      相关资源
      最近更新 更多