gpt4 book ai didi

mysql - 将列添加到以前缀开头的所有表的过程

转载 作者:行者123 更新时间:2023-11-29 07:18:07 26 4
gpt4 key购买 nike

我需要向以前缀“art_”开头的所有表添加一定数量的列。
如果我手动执行此操作,将需要很长时间,因为带有此前缀的表超过 100 个。

我可以使用程序来修改所有这些表吗?如果是这样,程序会是什么样子?

预先感谢您的帮助

最佳答案

您需要根据您的要求在存储过程中创建游标。

select * 
from information_schema.tables

以上查询将返回数据库中的所有表。

    DELIMITER $$

CREATE PROCEDURE `addprefix`()
BEGIN
DECLARE r_table_name VARCHAR(50);
DECLARE loop_end INTEGER DEFAULT 0;
DECLARE cur1 CURSOR FOR SELECT table_name FROM information_schema.tables WHERE table_schema = "db_name";
DECLARE CONTINUE HANDLER FOR NOT FOUND SET loop_end = 1;
OPEN cur1;
rootLoop : LOOP
FETCH cur1 INTO r_table_name;
IF loop_end THEN
LEAVE rootLoop;
END IF;
IF SUBSTR(r_table_name,0,4) = "art_" THEN
your COLUMN ADD CODE;
END IF;
END LOOP rootLoop;
CLOSE cur1;
END$$

DELIMITER ;

关于mysql - 将列添加到以前缀开头的所有表的过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37158472/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com