例如,我有一个users表和waitingUsers表:
它们的工作方式如下:

`Users`:
id
name


`WaitingUsers`:
id
user_id

UsersWaitingUsers的id都是自动递增的。
我希望有一个PROCEDURE来创建用户,新的id在创建用户后生成,并使用它插入到waitingUsers中。我该怎么做?谢谢。

最佳答案

试试这个,

DELIMITER $$
CREATE PROCEDURE InsertRecord(IN _name VARCHAR(30))
BEGIN
    INSERT INTO Users VALUES (_name);
    INSERT INTO WaitingUsers VALUES (LAST_INSERT_ID());
END $$
DELIMITER ;

LAST_INSERT_ID()

DELIMITER $$
CREATE PROCEDURE InsertRecord(IN _name VARCHAR(30))
BEGIN
    INSERT INTO Users (id, Name) VALUES (NULL, _name);
    INSERT INTO WaitingUsers (id, user_id) VALUES (NULL, LAST_INSERT_ID());
END $$
DELIMITER ;

关于mysql - 如何在MySQL PROCEDURE中使用新插入的记录ID?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14333909/

10-09 04:30