将存储过程的结果集存储到变量。 (MySQL的)

时间:2016-02-25 01:34:24

标签: mysql stored-procedures

我编写了以下过程,但是无法将存储过程的结果设置为变量:@pZipID和@pCountyID。我已经尝试将存储过程嵌套在括号中。也就是说:

SET @pCountyID = (CALL addCounty(pCounty));

我也尝试过:

CALL addCounty(pCounty) INTO @pCountyID

但无济于事。这是整个存储过程:

DROP PROCEDURE IF EXISTS readZipAndCountyIntoTables;
DELIMITER //
CREATE PROCEDURE getCountyNameFromZip(pZipcode VARCHAR(16), pCounty VARCHAR(250))
BEGIN
    DECLARE pZipID INT DEFAULT 0;
    DECLARE county_id INT DEFAULT 0;
    SET @pZipID = CALL addZipcode(pZipcode);
    SET @pCountyID = CALL addCounty(pCounty);
    CALL addZipToCounty(pZipID, pCountyID);
END//
DELIMITER ;

MySql在查找错误方面绝对没用。如果我发生了一个小的语法问题,请告诉我,因为我知道它是声明或设置有问题。我取出了设置和声明并调用了存储过程,没有发生错误。

如果您需要更清晰,请告诉我是否需要查看其他存储过程。但他们已经过彻底的测试。

感谢任何帮助。提前谢谢。

0 个答案:

没有答案