MySQL常用系统表

1. 获取所有表结构(TABLES)

SELECT  *  FROM information_schema.TABLES WHERE  TABLE_SCHEMA='数据库名';

TABLES表:提供了关于数据库中的表的信息(包括视图)。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。各字段说明如下:

字段 含义

Table_catalog 数据表登记目录

Table_schema 数据表所属的数据库名

Table_name 表名称

Table_type 表类型[system view|base table]

Engine 使用的数据库引擎[MyISAM|CSV|InnoDB]

Version 版本,默认值10

Row_format 行格式[Compact|Dynamic|Fixed]

Table_rows 表里所存多少行数据

Avg_row_length 平均行长度

Data_length 数据长度

Max_data_length 最大数据长度

Index_length 索引长度

Data_free 自由数据?

Auto_increment 做自增主键的自动增量当前值

Create_time 表的创建时间

Update_time 表的更新时间

Check_time 表的检查时间

Table_collation 表的字符校验编码集

Checksum 校验和

Create_options 创建选项

Table_comment 表的注释、备注

2. 获取表字段(COLUMNS)

SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='数据库名' AND TABLE_NAME='表名'

COLUMNS表:提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。各字段的说明信息如下:

字段 含义

Table_catalog 数据表登记目录

Table_schema 数据表所属的数据库名

Table_name 所属的表名称

Column_name 列名称

Ordinal_position 字段在表中第几列

Column_default 列的默认数据

Is_nullable 字段是否可以为空

Data_type 数据类型

Character_maximum_length 字符最大长度

Character_octet_length 字节长度?

Numeric_precision 数据精度

Numeric_scale 数据规模

Character_set_name 字符集名称

Collation_name 字符集校验名称

Column_type 列类型

Column_key 关键列[NULL|MUL|PRI]

Extra 额外描述[NULL|on update CURRENT_TIMESTAMP|auto_increment]

Privileges 字段操作权限[select|select,insert,update,references]

Column_comment 字段注释、描述

3. 获取表键值

SELECT  *  FROM information_schema.KEY_COLUMN_USAGE  WHERE  TABLE_SCHEMA='数据库名'  AND TABLE_NAME='表名'

KEY_COLUMN_USAGE表:存取表的健值。各字段的说明信息如下:

字段 含义

Constraint_catalog 约束登记目录

Constraint_schema 约束所属的数据库名

Constraint_name 约束的名称

Table_catalog 数据表等级目录

Table_schema 键值所属表所属的数据库名(一般与Constraint_schema值相同)

Table_name 键值所属的表名

Column_name 键值所属的列名

Ordinal_position 键值所属的字段在表中第几列

Position_in_unique_constraint 键值所属的字段在唯一约束的位置(若为外键值为1)

Referenced_talble_schema 外键依赖的数据库名(一般与Constraint_schema值相同)

Referenced_talble_name 外键依赖的表名

Referenced_column_name 外键依赖的列名  

4. 获取表Check约束

SELECT * FROM information_schema.TABLE_CONSTRAINTS  WHERE  TABLE_SCHEMA='数据库名' AND TABLE_NAME='表名'

TABLE_CONSTRAINTS表:存储主键约束、外键约束、唯一约束、check约束。各字段的说明信息如下:

字段 含义

Constraint_catalog 约束登记目录

Constraint_schema 约束所属的数据库名

Constraint_name 约束的名称

Table_schema 约束依赖表所属的数据库名(一般与Constraint_schema值相同)

Table_name 约束所属的表名

Constraint_type 约束类型[primary key|foreign key|unique|check]

5. 获取表索引

SELECT * FROM information_schema.STATISTICS WHERE TABLE_SCHEMA='数据库名' AND TABLE_NAME='表名'

STATISTICS表:提供了关于表索引的信息。各字段的说明信息如下:

字段 含义

Table_catalog 数据表登记目录

Table_schema 索引所属表的数据库名

Table_name 索引所属的表名

Non_unique 字段不唯一的标识

Index_schema 索引所属的数据库名(一般与table_schema值相同)

Index_name 索引名称

Seq_in_index 

Column_name 索引列的列名

Collation 校对,列值全显示为A

Cardinality 基数(一般与该表的数据行数相同)

Sub_part  Packed 是否包装过,默认为NULL Nullable 是否为空[‘’|YES|NO]

Index_type 索引的类型,列值全显示为BTREE(平衡树索引)

Comment 索引注释、备注

原文地址:https://www.cnblogs.com/wanggs/p/5035835.html