在mysql存储过程中循环遍历数组

时间:2015-04-23 11:47:19

标签: mysql sql mysql-workbench

我需要动态更改表集 目前我只能使用低于SP的方式改变一个。

DROP PROCEDURE IF EXISTS add_version_to_actor;

DELIMITER $$

CREATE DEFINER=CURRENT_USER PROCEDURE add_version_to_actor (IN table_name VARCHAR(40) ) 
BEGIN
DECLARE colName TEXT;
SELECT column_name INTO colName
FROM information_schema.columns 
WHERE table_schema = 'database_name'
    AND table_name = table_name
AND column_name = 'column';

IF colName is null THEN 
    Alter Table database_name.table_name ADD `sequence` INT( 10 ) NOT NULL;
END IF; 
END$$

DELIMITER ;

CALL add_version_to_actor('table1');

DROP PROCEDURE add_version_to_actor;

目前' table1'是一个参数。我需要将多个表名称作为字符串传递给这个CALL add_version_to_actor('table1','table2');并循环遍历所有这些。如何实现。

提前致谢。

0 个答案:

没有答案