Reputation: 127
I use the procedure for user registering
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 ;
but how to make the procedure return last inserted id?
Upvotes: 0
Views: 4806
Reputation: 3821
I've added a OUT parameter in your procedure.
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 ;
Upvotes: 1