information_schema.columns和information_schema.tables字段说明

袁志蒙 2597次浏览

摘要:MySQL版本大于5.0时,有个默认数据库information_schema,里面存放着所有数据库的信息(比如表名、 列名、对应权限等),这个知识点还是比较有用的,在做数据结构对比工具的时候可以使用,还可以通过这个数据库实现跨库查询...

MySQL版本大于5.0时,有个默认数据库 information_schema ,里面存放着所有数据库的信息(比如表名、 列名、对应权限等),这个知识点还是比较有用的,在做数据结构对比工具的时候可以使用,还可以通过这个数据库实现跨库查询,爆表爆列等。

获取所有列信息(COLUMNS)

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

字段说明:

字段含义
TABLE_CATALOG数据表登记目录
TABLE_SCHEMA数据表所属的数据库名
TABLE_NAME表名称
COLUMN_NAME字段名
ORDINAL_POSITION字段编号,从1开始往后排
COLUMN_DEFAULT字段默认值
IS_NULLABLE字段是否可以是NULL
DATA_TYPE数据类型
CHARACTER_MAXIMUM_LENGTH字段的最大字符数
CHARACTER_OCTET_LENGTH字段的最大字节数
NUMERIC_PRECISION数字精度
NUMERIC_SCALE小数位数
DATETIME_PRECISIONdatetime类型和SQL-92interval类型数据库的子类型代码
CHARACTER_SET_NAME字段字符集名称
COLLATION_NAME字符集排序规则
COLUMN_TYPE字段类型
COLUMN_KEY索引类型
EXTRA其他信息
PRIVILEGES权限
COLUMN_COMMENT字段注释
GENERATION_EXPRESSION组合字段的公式

另外还有 TABLES 表,可以查询出每个表的详细信息。

SELECT  *  FROM information_schema.TABLES WHERE TABLE_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表的注释、备注
随机内容

表情

共0条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~