逻辑:通过sql语句能查询数据库中的全部备注信息,然后将备注信息拼接成一个修改sql。
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 = '数据库名称';
SELECT
concat(
'alter table ',
table_schema,
'.',
table_name,
' comment ''',
''';'
) s
FROM
information_schema. COLUMNS
WHERE
table_schema = '数据库名称'
GROUP BY
TABLE_NAME;
以上查询出来的语句,放到mysql执行就大功告成啦!