0

我使用用户注册程序

DELIMITER //
CREATE PROCEDURE `regist`(IN login VARCHAR(20), IN password VARCHAR(32), IN ip VARCHAR(15))
BEGIN
INSERT INTO `users` (`login`, `password`, `ip`) VALUES (login, password, ip);
END
//
DELIMITER ;

但是如何使程序返回最后插入的 id?

4

2 回答 2

1

我在您的过程中添加了一个 OUT 参数。

DELIMITER //
CREATE PROCEDURE `regist`(IN login VARCHAR(20), IN password VARCHAR(32), IN ip VARCHAR(15), OUT lastId INT)
BEGIN
INSERT INTO `users` (`login`, `password`, `ip`) VALUES (login, password, ip);
SET @last_id = LAST_INSERT_ID();
END
//
DELIMITER ;
于 2013-06-19T11:59:23.143 回答
0

在mysql中是 LAST_INSERT_ID()

于 2013-06-19T12:01:26.440 回答