arrière-plan
En raison de scénarios commerciaux, un certain champ tel que phone_name implique de nombreuses tables. Actuellement, de nombreuses tables ont des champs redondants. Cependant, la longueur du champ fournie au début n'est que varchar(100), ce qui ne répond pas aux besoins actuels. doit être La longueur du champ a été augmentée à varchar(255). Si vous le modifiez un par un manuellement, il y aura des centaines de tables, ce qui prend beaucoup de temps. J'ai donc pensé à la méthode suivante pour créer un mémo.
plan
Modifier les instructions DDL qui rendent ce champ obligatoire dans ces tables
- SELECT
- concat("ALTER TABLE `",table_name,"` MODIFY COLUMN `phone_name` varchar(255) NOT NULL COMMENT '手机名称';")
- FROM information_schema.columns
- WHERE
- table_schema = 'db_lingyejun' and column_name='phone_name' and character_maximum_length < 255 and is_nullable = 'NO';
Modifier les instructions DDL qui rendent ce champ nullable dans ces tables
- SELECT
- concat("ALTER TABLE `",table_name,"` MODIFY COLUMN `phone_name` varchar(255) DEFULT NULL COMMENT '手机名称';")
- FROM information_schema.columns
- WHERE
- table_schema = 'db_lingyejun' and column_name='phone_name' and character_maximum_length < 255 and is_nullable = 'YES';
Si cet article vous aide, merci de liker "Ling Yejun", merci pour votre soutien.
Premier lien :https://www.cnblogs.com/lingyejun/p/18293068