1.获取mysql所有表结构的sql语句:
select * from information_schema.tables;
2.获取表字段的sql语句
select * from information_schema.columns;
3.获取表键值的sql语句
select * frominformation_schema.key_column_usage
where table_schema='数据库名' and table_name='表名';
4.获取表check约束的sql语句
select * from information_schema. table_constraints;
5.获取表索引的sql语句
select * from information_schema.statistics;
mysql数据库存储用户表的系统库是information_schema
存储用户表的系统表是tables
字段 | 含义 |
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 | 表的注释、备注 |
存储用户表字段的系统表是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 | 字段注释、描述 |
存储键值的系统表是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 | 外键依赖的列名 |
存储主键约束、外键约束、唯一约束、check约束、非空约束的系统表是table_constraints
字段 | 含义 |
Constraint_catalog | 约束登记目录 |
Constraint_schema | 约束所属的数据库名 |
Constraint_name | 约束的名称 |
Table_schema | 约束依赖表所属的数据库名(一般与Constraint_schema值相同) |
Table_name | 约束所属的表名 |
Constraint_type | 约束类型[primary key|foreign key|unique|check|not null] |
存储索引的系统表是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 | 索引注释、备注 |