【发布时间】:2019-09-15 12:18:11
【问题描述】:
我在mysql中有这个存储过程:
DELIMITER $$
CREATE PROCEDURE createCompany ()
BEGIN
DECLARE finished INTEGER DEFAULT 0;
DECLARE company varchar(5000) DEFAULT "";
DEClARE cur CURSOR FOR SELECT company FROM companies;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1
OPEN cur;
getCompany: LOOP
FETCH cur INTO company;
IF finished = 1 THEN
LEAVE getCompany;
END IF;
call LOG(company);
END LOOP getCompany;
CLOSE cur;
END$$
DELIMITER ;
LOG程序是:
DELIMITER $$
CREATE PROCEDURE `LOG`(IN message varchar(5000))
BEGIN
insert into tmplog (log) values (message);
END$$
DELIMITER ;
我有一个名为 tmplog 的临时表,其中包含两个字段:日期和日志 (varchar(5000))
当我调用 createCompany 时,我得到下一个结果:
日志栏是空的...怎么了?
【问题讨论】:
-
尝试重命名本地变量,使其与字段名称不匹配。
标签: mysql sql stored-procedures