MySQL游标重命名表,脚本错误

时间:2011-01-28 14:02:43

标签: mysql

我是MySQL的新手,我有一个脚本应该将所有表重命名为大写。我有一个错误,但我无法弄清楚它为什么不起作用。任何帮助表示赞赏!

DECLARE a VARCHAR(100);
DECLARE done INT DEFAULT 0;

DECLARE cur1 CURSOR FOR 
    SELECT DISTINCT table_name 
    FROM information_schema.columns 
    WHERE table_schema='admin27_shop';

DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;

OPEN cur1;

read_loop: LOOP
    FETCH cur1 INTO a;
    IF done THEN
        LEAVE read_loop;
    END IF;

    CREATE TABLE CONCAT(a, '1') SELECT * FROM a;
    DROP TABLE a;
    RENAME TABLE CONCAT(a, '1') TO UPPER(a);
END LOOP;

CLOSE cur1;

更新:错误消息发生在第1行,在变量声明处,表示存在语法错误...

1 个答案:

答案 0 :(得分:0)

必须是我特定版本的MySQL和应用程序。结束这个问题。