如何在存储过程的同一个函数中将插入的值id插入到另一个表中?
例如:

CREATE PROCEDURE p1(IN id_val INT, IN name_val VARCHAR(255))
    BEGIN
    DECLARE @iJobID [INT]
    SET @iJobID=(INSERT INTO test(id, name) VALUES(id_val, name_val));
    INSERT INTO vasu(id) VALUES(@iJobID);
END;

最佳答案

您可以使用LAST_INSERT_ID()获取最后插入的ID,并在局部变量上设置它。

DELIMITER $$

CREATE PROCEDURE p1
(
    IN id_val INT,
    IN name_val VARCHAR(255)
)
BEGIN

    INSERT INTO test(id, name) VALUES(id_val, name_val);
    SET @iJobID :=  LAST_INSERT_ID();
    INSERT INTO vasu(id) VALUES(@iJobID);

END $$

DELIMITER ;

LAST_INSERT_ID()

关于php - 存储过程:如何插入关系数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14563423/

10-10 16:53