[英]how can i batch delete column comments in mysql?
我知道我可以通过alter table tal_name modify column Field Type comment ''
删除列注释。
但是,如果我有很多要删除的注释,我该如何通过sql脚本来删除?
第一次,我想使用show full columns from tal_name
来获取完整的信息,因此我可以使用光标删除注释,但是我发现我无法像使用select
语句那样使用show
语句的结果。
我也无法根据show
结果create view
。
也许我的想法是错误的,所以有什么办法可以批量删除评论?
任何帮助表示赞赏。
我想您只需要做一次,就可以按照以下两个步骤进行:
首先执行此查询:
select concat('alter table ', '`',table_name,'` ',
'modify column `', column_name,'` ',
column_type,
ifnull(concat(' character set ', character_set_name), ''),
ifnull(concat(' collate ', collation_name), ''),
if(is_nullable = 'no', ' not null ', ''),
if(column_default is null, '', concat(' default ', quote(column_default))),
' ', extra, ';')
as column_definition
from information_schema.columns
where table_schema like 'db%'
and column_comment is not null;
...将表架构上的条件更改为您的案例。 输出将是每行一条SQL语句:
column_definition
---------------------------------------------------------
alter table `tab` modify column `id` int(11) not null auto_increment;
alter table `tab` modify column `name` varchar(100) not null;
在该输出中复制SQL语句并执行它们。 缺少comment
子句将删除这些列上的注释。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.