我有很多列varchar(45)
的表格。现在我需要他们全部成为varchar(128)
。有没有办法在不手动检查所有40个表的情况下完成它?
我发现this question触及了类似的主题,但是如何使用列进行操作?
答案 0 :(得分:3)
要获得满足我需求的所有列,我可以使用:
SELECT table_name, column_name FROM information_schema.columns
WHERE table_schema LIKE "my_schema_name"
AND data_type = "varchar"
AND character_maximum_length < 50;
现在我需要使用任何可以连接到MySQL的编程语言,并在循环中执行:
ALTER TABLE table_name MODIFY column_name VARCHAR(128);