很多场景下,我们需要查看 MySQL 中表注释,或者是某张表下所有字段的注释,所以本文就来盘点和对比一下查询注释的几种方式。

创建测试数据库

开始之前咱们先创建一个数据库,以备下面演示使用。

-- 如果存在就先删除数据库
drop database if exists test2022;
-- 创建数据库
create database test2022;
-- 切换数据库
use test2022;
-- 创建表和字段(以及相应的注释)
CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学生编号',
`sn` varchar(50) DEFAULT NULL COMMENT '学号',
`username` varchar(250) NOT NULL COMMENT '学生名称',
`mail` varchar(250) DEFAULT NULL COMMENT '邮箱',
`class_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) comment='学生表' ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4

查询所有表注释

使用以下 SQL 可以查询某个数据库下所有表的注释:

SELECT table_name 表名, table_comment 表说明
FROM information_schema.TABLES
WHERE table_schema='数据库名'
ORDER BY table_name

案例:查询 test2022 数据库中的所有表注解:

SELECT table_name 表名, table_comment 表说明
FROM information_schema.TABLES
WHERE table_schema='test2022'
ORDER BY table_name

执行结果如下图所示:

查询所有字段注释

字段注释查询方式1

查询语法如下:

show full columns from 表名;

案例:查询 student 表中所有字段的注释信息:

show full columns from student;

执行结果如下图所示:

字段注释查询方式2

查询语法如下:

select COLUMN_NAME 字段名,column_comment 字段说明,column_type 字段类型,
column_key 约束 from information_schema.columns
where table_schema='数据库名' and table_name='表名';

案例:查询 student 表中所有字段的注释信息:

select COLUMN_NAME 字段名,column_comment 字段说明,column_type 字段类型,
column_key 约束 from information_schema.columns
where table_schema='test2022' and table_name='student';

执行结果如下图所示:

字段注释查询方式3

查询表的 DDL(数据定义语言)也可以看到字段的注释内容,执行的 SQL 语法如下:

show create table 表名;

案例:查询 student 表中所有字段的注释信息:

show create table student;

执行结果如下图所示:

字段注释查询方式4

如果使用的是 Navicat 工具,可以在表上右键、再点设计,到设计页面就可以查看字段注释了,如下图所示:



但这种操作有点危险,小心手抖把表结构改错了。

字段注释查询方式5

在 Navicat 中查看表的 DDL 语句也可以看到字段注释,选中表再点击右下脚“显示右边窗口”选项,然后再点击 DDL 就可以显示了,具体操作步骤如下图所示:

修改表注释和字段注释

修改表注释

修改表注释的语法:

alter table 表名 comment ='修改后的表注释';

案例:修改 student 的表注释:

alter table student  comment ='学生表 V2';

执行结果如下图所示:

修改字段注释

修改表注释的语法:

alter table 表名 modify column 字段名 int comment '注释信息';

案例:修改 student 表中 name 的注释:

alter table student modify column username int comment '学生姓名 V2';

执行结果如下图所示:

总结

本文介绍了查看表注释的 SQL,以及修改表和字段注释的 SQL,同时还介绍了查看字段注释的 5 种方法:3 种命令行操作方式查看,两种基于 Navicat 的操作方式查看,其中推荐使用 SQL:“show full columns from 表名”查看字段注释,这种查询 SQL 简单且也不用担心会误改表结构。

是非审之于己,毁誉听之于人,得失安之于数。

公众号:Java面试真题解析

查询 MySQL 字段注释的 5 种方法!的更多相关文章

  1. mysql写注释的几种方法

    MySQL的注释风格总的来说有三种.它们分别是 1.单行注释可以用"#" select 1 as cname; #this is a comment +-------+ | cna ...

  2. [转]mysql写注释的几种方法

    原文地址:https://www.cnblogs.com/JiangLe/p/6897403.html MySQL的注释风格总的来说有三种.它们分别是 1.单行注释可以用"#" s ...

  3. MySQL提供了以下三种方法用于获取数据库对象的元数据

    MySQL提供了以下三种方法用于获取数据库对象的元数据: 1)show语句 2)从INFORMATION_SCHEMA数据库里查询相关表 3)命令行程序,如mysqlshow, mysqldump 用 ...

  4. JSON文件加注释的7种方法

    JSON文件加注释的7种方法 缺省不能加注释,现实有需求 根据JSON规范(http://www.json.org, RFC 4627, RFC 7159),不支持注释.JSON规范之所以不允许加注释 ...

  5. 几种破解MySQL root密码的几种方法:

    几种破解MySQL root密码的几种方法: 方法一 使用phpmyadmin,这是最简单的了,修改mysql库的user表,不过别忘了使用PASSWord函数. 方法二 使用mysqladmin,这 ...

  6. MySQL修改密码的三种方法

      MySQL修改密码的三种方法 1.方法1: 2.方法2: 3.方法3:        

  7. 转 mysql 远程连接数据库的二种方法

    mysql 远程连接数据库的二种方法   一.连接远程数据库: 1.显示密码 如:MySQL 连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456” ...

  8. MSSQL·查询T-SQL语句执行时间的三种方法

    阅文时长 | 0.23分钟 字数统计 | 420.8字符 主要内容 | 1.引言&背景 2.自定义时间变量求差法 3.MSSQL内置方法 4.MSSQL选项开启时间统计 5.声明与参考资料 『 ...

  9. Docker MySql 查看版本的三种方法

    目录 Docker MySql 查看版本的三种方法 1.mysql -V命令查看版本 2.status命令查看版本 3.version命令查看版本 Docker MySql 查看版本的三种方法 1.m ...

随机推荐

  1. Git remote 远程仓库链接管理

    SVN 使用单个集中仓库作为开发人员的通信枢纽,通过在开发人员的工作副本和中央仓库之间传递变更集来进行协作. 这与 Git 的分布式协作模型不同,后者为每个开发人员提供了自己的仓库副本,并具有自己的本 ...

  2. 2021 中国.NET开发者峰会 今日开幕

    01 大会介绍 .NET Conf China 2021 是面向开发人员的社区峰会,基于 .NET Conf 2021的活动,庆祝 .NET 6 的发布和回顾过去一年来 .NET 在中国的发展成果展示 ...

  3. 19.CSS3

    前端三要素: HTML (结构)+ CSS(表现)+ JavaScript (行为) 一.什么是 CSS 1. CSS 是什么 CSS :Cascading Style Sheets ,层叠(级联)样 ...

  4. CF753A Santa Claus and Candies 题解

    Content 圣诞老人有 \(n\) 颗糖果,他想把这些糖果分发给一些小孩子,并想要每个孩子都能得到不同的糖果数目.求能得到糖果的孩子的最大数目,以及他们各自得到的糖果数. 数据范围:\(1\leq ...

  5. LuoguP7189 [COCI2007-2008#6] PARKING 题解

    Content 有 3 辆卡车,第 \(i\) 辆卡车停车开始时间为 \(l_i\),结束时间为 \(r_i\)(不包含).现在有以下收费方式: 停车辆数 每分钟每辆车单价 \(1\) \(a\) \ ...

  6. word里搜狗输入法出不来,可以按ctrl+空格键

    word里搜狗输入法出不来,可以按ctrl+空格键

  7. TensorFlow.NET机器学习入门【3】采用神经网络实现非线性回归

    上一篇文章我们介绍的线性模型的求解,但有很多模型是非线性的,比如: 这里表示有两个输入,一个输出. 现在我们已经不能采用y=ax+b的形式去定义一个函数了,我们只能知道输入变量的数量,但不知道某个变量 ...

  8. es(elasticsearch)安装IK中文分词器

    IK压缩包下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases?after=v6.7.0,需要下载对应的版本 我也上传了 h ...

  9. 【LeetCode】461. Hamming Distance 解题报告(java & python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 Java解法 方法一:异或 + 字符串分割 方法二: ...

  10. 1109 01组成的N的倍数

    1109 01组成的N的倍数 基准时间限制:1 秒 空间限制:131072 KB  给定一个自然数N,找出一个M,使得M > 0且M是N的倍数,并且M的10进制表示只包含0或1.求最小的M.   ...