存储过程
drop procedure if exists taskAddFieldPro;
CREATE PROCEDURE taskAddFieldPro()
BEGIN
DECLARE tableName CHARACTER(50);
DECLARE done INT DEFAULT FALSE;
DECLARE taskCursor CURSOR FOR select userName from user; /**从user表中查出username作为前缀相同表的不同后缀名*/
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN taskCursor;
read_loop:LOOP
FETCH NEXT from taskCursor INTO tableName;
IF done THEN
LEAVE read_loop;
ELSE
set @sql=concat('alter table uuu_',tableName,' add column isSuccess int(11) default 1');
PREPARE stmt from @sql;
execute stmt;
END IF;
END LOOP;
CLOSE taskCursor;
END;
CALL taskAddFieldPro();
本文介绍了如何使用存储过程在MySQL中,根据user表中的用户名前缀动态创建新的表,并在每个表中添加列isSuccess。通过遍历查询结果并设置SQL语句,实现了一种灵活的数据表扩展方式。
1893

被折叠的 条评论
为什么被折叠?



