mysql中修改不同表的同一字段

最近在做分库分表时发现之前建的表中某个字段的长度需要修改,这里分享一下在此背景如何快速修改不同表的同一个字段(类似修改可参照处理)

1.将需要执行的sql导出:
SELECT 
  CONCAT(
    'ALTER TABLE ',
    table_name,
    '  MODIFY TYPE VARCHAR(100);'
  ) AS '要执行的sql'
FROM
  information_schema.tables 
WHERE table_schema = '数据库名' ;

此处是将数据库里所有表中type字段的类型改为varchar,长度100,执行上面的sql后得到如下结果:
mysql中修改不同表的同一字段
然后如图示导出sql:
mysql中修改不同表的同一字段
导出后sql为:

要执行的sql
ALTER TABLE log_0  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_1  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_2  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_3  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_4  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_5  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_6  MODIFY TYPE VARCHAR(100);
ALTER TABLE log_7  MODIFY TYPE VARCHAR(100);
2.执行导出的sql

mysql中修改不同表的同一字段
至此,数据库所有表的type字段已改为varchar(100).