Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL information_schema详解 COLUMNS

MySQL information_schema详解 COLUMNS

作者头像
bsbforever
发布于 2020-08-18 01:51:29
发布于 2020-08-18 01:51:29
4K00
代码可运行
举报
运行总次数:0
代码可运行

往期专题请查看www.zhaibibei.cn 这是一个坚持Oracle,Python,MySQL原创内容的公众号

这个专题主要讲information_schema数据库下的一些表

如无特殊说明数据库版本为MySQL 5.7.26

1. COLUMNS

该表显示表中列的信息

有如下栏位

  • TABLE_CATALOG 包含列的表所属的目录的名称,该值总是def
  • TABLE_SCHEMA 包含列的表所属的数据库的名称。
  • TABLE_NAME 包含列的表名
  • COLUMN_NAME 列名
  • ORDINAL_POSITION 该列在表中的位置
  • COLUMN_DEFAULT 列的默认值,如果未定义或者显式的指定为NULL,则该值为NULL
  • IS_NULLABLE 该列是否为空(YES/NO)
  • DATA_TYPE 列的数据类型,不包含其他信息,如数据类型的精度
  • CHARACTER_MAXIMUM_LENGTH 字符串类型的列的最大长度,字符为单位
  • CHARACTER_OCTET_LENGTH 字符串类型的列的最大长度,字符为字节
  • NUMERIC_PRECISION number类型的列的精度
  • NUMERIC_SCALE number类型的列的scale
  • DATETIME_PRECISION 对于日期类型的列的分数秒精度
  • CHARACTER_SET_NAME 对于字符串的列,其字符集的名称
  • COLLATION_NAME 对于字符串的列,其排序规则的名称
  • COLUMN_TYPE列的数据类型,除了类型外可能包含其他信息,例如精度等
  • COLUMN_KEY 该列是否被索引
  • EXTRA 列的其他一些信息
  • PRIVILEGES 你对该列所拥有的权限
  • COLUMN_COMMENT 列的注释
  • GENERATION_EXPRESSION 如果是生成列,这里显示用来继续其值的表达式,否则为空

接下来对上面的一些栏位做进一步的介绍

1.1 COLUMN_KEY

该列显示列是否被索引,其有如下可能值

  • 空 代表没有被索引,或者是一个多列的非唯一的索引的次要列
  • PRI 代表是主键,或者是一个多列主键的其中一个栏位
  • UNI 代表是一个唯一索引的第一个列,一个唯一索引是可以有多个空值的
  • MUL 代表该列是一个非唯一索引的第一个列

如果一个栏位在多个索引中,COLUMN_KEY只会显示其中优先级最高的一个,顺序为PRI, UNI, MUL

如果表中无主键,如果一个唯一索引不可以包含空值(定义非空),该列其可能会被显示为PRI

一个复合索引如果是唯一的,该列也有可能会被显示为MUL

1.2 EXTRA

该列用于显示额外的信息

  • auto_increment 代表该列有AUTO_INCREMENT属性
  • on update 对于TIMESTAMP 或 DATETIME类型的列,CURRENT_TIMESTAMP有ON UPDATE CURRENT_TIMESTAMP属性
  • VIRTUAL GENERATED 或者 VIRTUAL STORED 对于生成列的一些信息

2. 实际截图

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT * FROM INFORMATION_SCHEMA.COLUMNS\G

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE 
table_name = 'innodb_table'  AND table_schema = 'test' \G

SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'innodb_table'  AND table_schema = 'test';

或者

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SHOW COLUMNS from innodb_table from test;

show 命令只显示该表中一些栏位

第一个from后是表名,第二from后是数据库名称

3. 参考链接

https://dev.mysql.com/doc/refman/5.7/en/columns-table.html

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宅必备 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
mysql的information_schema下的COLUMNS表详解
`information_schema.COLUMNS` 表是 MySQL 中的一个元数据表,用于存储数据库中所有表的列信息。这个表对于查询和管理数据库结构非常有用,可以帮助您了解每个表中的列定义、数据类型、约束等细节。
jack.yang
2025/04/05
860
故障分析 | MySQL 扩展 VARCHAR 长度遭遇问题的总结
经过排查分析得出,这是由于改表系统解析改表需求得出错误的改表方案导致,即这类改表可以满足快速改表操作(直接使用 ALTER TABLE),理论上任务下发后能马上改完,但是工单结果是执行触发 10 秒超时,最终工单失败。
爱可生开源社区
2024/01/31
3660
故障分析 | MySQL 扩展 VARCHAR 长度遭遇问题的总结
MySQL information_schema详解 COLUMN_PRIVILEGES
该表显示一些用户具有的列权限信息,其来源为mysql.columns_priv系统表
bsbforever
2020/08/18
5770
MySQL系统表的利用姿势(浅探)
我们可以通过前期的渗透手段和分析得知目标网站某处存在SQL注入漏洞;于是我们就可以利用SQL的文件读取的特性来读取目标系统中的某个文件的内容
Mirror王宇阳
2020/11/12
7060
深入解析MySQL 8:事务数据字典的变革
在MySQL 8之前的版本中,元数据分散地存储在多个地方,包括元数据文件、非事务性表和特定于存储引擎的数据字典中。这种分散的存储方式不仅增加了管理的复杂性,还可能导致数据的不一致性。为了解决这些问题,MySQL 8引入了事务数据字典,将元数据集中存储在具有事务功能的InnoDB表中,从而提供了一致性和可靠性的保证。
公众号:码到三十五
2024/03/19
1740
Server层统计信息字典表 | 全方位认识 information_schema
在上一篇《初相识|全方位认识information_schema》中,我们针对 information_schema 系统库做了一个简单的认识,本期我们将为大家带来系列第二篇《Server层统计信息字典表 | 全方位认识 information_schema》,下面请跟随我们一起开始 sys 系统库的学习之旅吧~
老叶茶馆
2020/11/26
1.3K0
使用SQL-front导出MySQL表结构为excel或word文档
在撰写数据库字典结构时,需要将表结构(含注释)导出为表格(EXCEL)格式,便于提高说明文档的效率,涉及最多是数据表:
文曦
2022/06/15
3.2K0
使用SQL-front导出MySQL表结构为excel或word文档
MySQL常用表结构查询语句
在我们使用数MySQL据库进行查询或者建表时,经常需要查看表结构,下面以employees数据库中的departments表为例进行表结构查询:
星哥玩云
2022/08/17
6.4K0
MySQL information_schema详解 KEY_COLUMN_USAGE
https://dev.mysql.com/doc/refman/5.7/en/key-column-usage-table.html
bsbforever
2020/08/18
1.7K0
mysql中information_schema库下的COLUMNS_EXTENSIONS表详解
`information_schema.COLUMNS_EXTENSIONS` 表是 MySQL 8.0.22 及以上版本中引入的一个元数据表,用于存储与表列相关的扩展属性。这些属性主要用于存储引擎级别的信息,例如 InnoDB 存储引擎的列属性。下面是对该表的详细解释:
jack.yang
2025/04/05
850
【重学 MySQL】十四、显示表结构
在MySQL中,查看或显示表结构是一个常见的需求,它可以帮助你了解表中包含哪些列、每列的数据类型、是否允许为空(NULL)、是否有默认值、是否设置了主键或外键等约束条件。有几种方式可以显示MySQL中的表结构,下面是一些常用的方法:
用户11332765
2024/10/28
4180
【重学 MySQL】十四、显示表结构
介绍一下 information_schema 库
今天给大家介绍一款 Mysql 中附属的数据库,就是 information_schema 数据库,为什么说是附属呢?是因为这个数据库是在安装 Mysql 的同时就会安装到你电脑上。这个数据库里面主要存储了关于数据库里面的各种库、表、列、注释等信息。这个库对我们有什么用呢?有很大用处,尤其是当一个公司没有数据字典的时候,你就可以通过查看这个数据库,然后自己去梳理字典。
张俊红
2019/06/24
1.9K0
MySQL 有效利用 profile 分析 SQL 语句的执行过程
在日常的工作中,我们通常要分析 SQL 语句的性能,通过会使用到执行计划,利用执行计划来分析 SQL 语句的性能,并进行相应的优化;本文将利用 profile 分析 SQL 语句的执行过程来辅助的分析 SQL 语句,做好优化;
JiekeXu之路
2019/06/20
4.9K0
MySQL 有效利用 profile 分析 SQL 语句的执行过程
Mysql数据库表结构设计导出[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/10/01
9.6K0
Mysql数据库表结构设计导出[通俗易懂]
MySQL内置数据库information_schema 详解
不知道大家有没有注意到,当你安装好MySQL数据库环境后,然后使用客户端连接后,会发现数据库列表不是空的,会有四个数据库(information_schema、mysql、sysperformance_schema),你有有没有对这些数据库有些好奇呢,今天先给大家聊聊MySQL内置的information_schema 数据库相关的知识,希望对大家深入了解MySQL能够提供一些帮助!
小明互联网技术分享社区
2023/12/07
5.1K1
MySQL内置数据库information_schema 详解
Server层表级别对象字典表 | 全方位认识 information_schema
在上一篇《Server层统计信息字典表 | 全方位认识 information_schema》中,我们详细介绍了information_schema系统库的列、约束等统计信息字典表,本期我们将为大家带来系列第三篇《Server层表级别对象字典表 | 全方位认识information_schema》。
老叶茶馆
2020/11/26
1.1K0
[MySQL] INFORMATION_SCHEMA 数据库包含所有表的字段
sql注入后可以通过该数据库获取所有表的字段信息 1. COLLATIONS表 提供有关每个字符集的排序规则的信息。 COLLATIONS表包含以下列: COLLATION_NAME 排序规则名称。 CHARACTER_SET_NAME 与排序规则关联的字符集的名称。 ID 排序规则ID。 IS_DEFAULT 排序规则是否为其字符集的默认值。 IS_COMPILED 字符集是否已编译到服务器中。 SORTLEN 这与对字符集中表示的字符串进行排序所需的内存量有关。
唯一Chat
2019/09/10
1.4K0
SQL笔记(2)——MySQL的表操作与索引
查看MySQL数据库中特定表的详细设计信息,可以使用DESCRIBE命令,该命令可以显示出表中所有列的名称、数据类型、默认值、空值约束、键约束等信息。例如:
MinChess
2023/04/22
1.7K0
SQL笔记(2)——MySQL的表操作与索引
手把手教你如何使用 Python 操作 Mysql 进行数据库的 diff
项目工作中,我们会遇到测试环境特别多的情况,例如:n套beta环境,多套预生产环境,多套uat环境等各种测试环境。为保证所有测试环境表结构上的一致性,如果只是单纯地靠人工来检查并更新,未免显得太过吃力且效率低下,还容易在实施的过程中出现遗漏的问题。
Wu_Candy
2022/07/04
9940
information_schema和performance_schema的一点知识
information_schema和performance_schema的一点知识
AsiaYe
2020/02/17
2.4K0
推荐阅读
相关推荐
mysql的information_schema下的COLUMNS表详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验