mysql清除注释,分两步

逻辑:通过sql语句能查询数据库中的全部备注信息,然后将备注信息拼接成一个修改sql。

1.清除字段注解

 
SELECT
    concat(
        'alter table ',
        table_schema,
        '.',
        table_name,
        ' modify column ',
        column_name,
        ' ',
        column_type,
        ' ',
    IF
        ( is_nullable = 'YES', IF ( data_type IN ( 'timestamp' ), ' null ', ' ' ), 'not null ' ),
    IF
        (
            column_default IS NULL,
            '',
        IF
            (
                data_type IN ( 'char', 'varchar' ) 
                OR data_type IN ( 'date', 'datetime' ) 
                AND column_default != 'CURRENT_TIMESTAMP',
                concat( ' default ''', column_default, '''' ),
                concat( ' default ', IF ( column_default = '', '''''', column_default ) ) 
            ) 
        ),
    IF
        ( extra IS NULL OR extra = '', '', concat( ' ', extra ) ),
        ' comment ''',
        ''';' 
) s 
FROM
    information_schema.COLUMNS 
WHERE
    table_schema = '数据库名称';

2.清除表注解

SELECT
concat( 'alter table ', table_schema, '.', table_name, ' comment ''', ''';' ) s 
FROM
    information_schema.COLUMNS 
WHERE
    table_schema = '数据库名称' 
GROUP BY
    TABLE_NAME;

 

 以上查询出来的语句,放到mysql执行就大功告成啦!
posted @ 2024-10-11 14:28  mingruqi  阅读(82)  评论(0编辑  收藏  举报