mysql 查看表、视图、列的备注信息

创建表

CREATE TABLE `NewTable` (
  `Column1` varchar(100) DEFAULT NULL,
  `Column2` varchar(100) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

表的备注信息

-- ALTER TABLE peiybdb.NewTable COMMENT='test table1';

select t.TABLE_CATALOG,t.TABLE_SCHEMA,t.TABLE_NAME,t.TABLE_TYPE,t.TABLE_COMMENT,
       CONCAT('alter table ',t.TABLE_SCHEMA,'.',t.TABLE_NAME,' COMMENT='''';') as table_need_comment
from Information_schema.TABLES t
where 1=1
and t.TABLE_SCHEMA not in ('information_schema','performance_schema','mysql','sys')
and ( ISNULL(t.TABLE_COMMENT) || LENGTH(trim(t.TABLE_COMMENT))<1 )
;

表的备注信息

mysql 添加列的备注信息还需要添加 type,比较不友好。最好的办法就是用ide修改。

-- ALTER TABLE peiybdb.NewTable MODIFY COLUMN Column1 varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT 'test col1';

select c.TABLE_CATALOG,c.TABLE_SCHEMA,c.TABLE_NAME,c.COLUMN_NAME,c.ORDINAL_POSITION,c.COLUMN_COMMENT
from Information_schema.columns c
where 1=1
and c.TABLE_SCHEMA not in ('information_schema','performance_schema','mysql','sys')
and ( ISNULL(c.COLUMN_COMMENT) || LENGTH(trim(c.COLUMN_COMMENT))<1 )
and (c.TABLE_CATALOG,c.TABLE_SCHEMA,c.TABLE_NAME ) not in (
     select v.TABLE_CATALOG,v.TABLE_SCHEMA,v.TABLE_NAME
       from Information_schema.VIEWS v
     where 1=1
        and v.TABLE_SCHEMA not in ('information_schema','performance_schema','mysql','sys')
)
;

查看表

CREATE TABLE `NewTable` (
  `Column1` varchar(100) DEFAULT NULL COMMENT 'test col',
  `Column2` varchar(100) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='test table'

发布了710 篇原创文章 · 获赞 70 · 访问量 49万+

猜你喜欢

转载自blog.csdn.net/ctypyb2002/article/details/103311794