我的SQL游标没有获取数据

时间:2015-11-08 18:32:26

标签: mysql-workbench

CREATE DEFINER=`root`@`localhost` PROCEDURE `Set_Val`()
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE id varchar(10);
  DECLARE cur CURSOR for SELECT id FROM HearthStone.Basic_enUS WHERE type !="Hero" and collectible = "True";
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

  OPEN cur;
  SET @uid = 0;
  read_loop: LOOP
    FETCH cur INTO id;
    IF done THEN
      LEAVE read_loop;
    END IF;
    INSERT into HearthStone.Basic_enUS (id) VALUES (@uid);
    SET @uid = @uid + 1;
  END LOOP;

  CLOSE cur;
END

上面的代码运行时没有崩溃。如何没有行受到影响,我收到无数据检索错误。这条线

SELECT id FROM HearthStone.Basic_enUS WHERE type !="Hero" and collectible = "True"; 

是否返回数据。我不知道出了什么问题。我是MySQL脚本的新手。我试图循环遍历所有数据并填写id列。对于所有行,id列现在为空。我使用Workbench 6.2来运行脚本。

0 个答案:

没有答案