MySQL服务器之information_schema数据库
- 简介:
- 重要的几个表:
- 1.schemata
- 2.tables
- 3.columns
简介:
information_schema是MySQL系统库之一,它用于存储关于数据库和表的元数据信息。该库包含了一系列的表,用于存储关于数据库、表、列、索引、约束、权限等的信息。
information_schema库中的表包括:
表格(tables):存储数据库中的表的信息,例如表名、引擎类型、行数等。
列(columns):存储表中的列的信息,例如列名、数据类型、默认值等。
约束(constraints):存储表中的约束信息,例如主键、外键、唯一约束等。
索引(indexes):存储表中的索引信息,例如索引名、索引类型、索引列等。
用户权限(privileges):存储用户和表之间的权限关系。
通过查询information_schema库中的表,可以获取关于数据库和表的详细信息,用于数据分析、权限管理等操作。例如,可以通过查询表格表获取数据库中所有表的列表,通过查询列表获取表的列信息等。
特别的是,information_schema库是一个虚拟库,其表中的数据并不实际存储在磁盘上,而是在运行时动态生成的。因此,information_schema库中的数据不可更改,只能用于查询元数据信息。
重要的几个表:
1.schemata
schemata这个表中存储了整个数据库服务器中的数据库名,其中特别需要注意的是:
SCHEMA_NAME,这列可以直接查询出数据库名。
2.tables
tables这个表中记录了数据库中的各个表,这里要注意:
- TABLE_SCHEMA ,这一列可以直接反应表的从属关系
- TABLE_NAME,这一列可以直接得到表的名称
3.columns
columns这个表记录了表中的列。这里要注意:
- TABLE_SCHEMA ,这一列可以直接反应表的从属关系
- TABLE_NAME,这一列可以直接得到表的名称
- COLUMN_NAME,得到表中列的名称