0

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

4

2 回答 2

1

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

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

SELECT * FROM tableB WHERE rowID = LAST_INSERT_ID();
于 2013-03-13T14:50:52.363 回答
0

您可以创建一个函数,该函数在新数据行中插入并返回 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

有关过程和功能的进一步阅读,请参阅文档

于 2013-03-13T14:50:17.110 回答