【MySQL】information_schema库中包含所有表的字段信息

自由飞翔 2019-04-22

information_schema提供了对数据库元数据、统计信息、以及有关MySQL Server的信息访问(例如:数据库名或表名,字段的数据类型和访问权限等)。information_schema库中保存的信息也可以称为MySQL的数据字典或系统目录。本文主要讲述了information_schema库中包含所有表的字段信息,感兴趣的朋友可以了解一下。

sql注入后可以通过该数据库获取所有表的字段信息

1.COLLATIONS表

提供有关每个字符集的排序规则的信息。 COLLATIONS表包含以下列:

COLLATION_NAME 排序规则名称。

CHARACTER_SET_NAME 与排序规则关联的字符集的名称。

ID 排序规则ID。

IS_DEFAULT 排序规则是否为其字符集的默认值。

IS_COMPILED 字符集是否已编译到服务器中。

SORTLEN 这与对字符集中表示的字符串进行排序所需的内存量有关。

2.SHOW COLLATION;//也可以查询到排序规则信息

3.COLLATION_CHARACTER_SET_APPLICABILITY 表

COLLATION_NAME 排序规则名称。

CHARACTER_SET_NAME 与排序规则关联的字符集的名称

4.COLUMNS 提供表中字段的信息

TABLE_CATALOG 包含该列的表所属的目录的名称。该值始终为def。

TABLE_SCHEMA 包含字段所在数据库的名称。

TABLE_NAME 包含字段所在表的名称。

COLUMN_NAME 字段的名称。

ORDINAL_POSITION 表中字段的位置。 ORDINAL_POSITION是必要的,因为你可能想说 ORDER BY ORDINAL_POSITION。与SHOW COLUMNS不同,COLUMNS表中的SELECT没有自动排序。show columns的语法是例如:show columns from my_test.user;

COLUMN_DEFAULT 字段的默认值。如果字段具有显式缺省值NULL,或者字段定义不包含DEFAULT子句,则此值为NULL。

IS_NULLABLE 字段可为空性。如果NULL值可以存储在列中,则值为YES,否则为NO。

DATA_TYPE 字段数据类型。 DATA_TYPE值只是类型名称,没有其他信息。

COLUMN_TYPE 值包含类型名称以及可能的其他信息,例如精度或长度。

CHARACTER_MAXIMUM_LENGTH 对于字符串列,最大长度(以字符为单位)。

CHARACTER_OCTET_LENGTH 对于字符串列,最大长度(以字节为单位)。

NUMERIC_PRECISION 对于数字字段,数字精度。

NUMERIC_SCALE 对于数字字段,数字刻度。

DATETIME_PRECISION 对于时间字段,小数秒精度。

CHARACTER_SET_NAME 对于字符串字段,字符集名称。

COLLATION_NAME 对于字符串字段,排序规则名称。

COLUMN_TYPE 字段数据类型。

DATA_TYPE 值只是类型名称,没有其他信息。

COLUMN_TYPE 值包含类型名称以及可能的其他信息,例如精度或长度。

COLUMN_KEY 名称是否已建立索引

EXTRA 有关给定字段的任何其他可用信息。

PRIVILEGES 您对该字段的权限。

COLUMN_COMMENT 字段定义中包含的任何注释。

GENERATION_EXPRESSION 对于生成的字段,显示用于计算列值的表达式.

相关推荐