INFORMATION_SCHEMA库

INFORMATION_SCHEMA在mysql>=5.0才自带的库,提供了访问了数据库元数据的方式,元数据就是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。
1.png

2.png

下面介绍三个主要的表:
INFORMATION_SCHEMA库:
schemata:---表---提供了当前mysql实例中所有数据库的信息。是show databases的结果取之此表。

主要字段:SCHEMA_NAME:库名

tables:---表---提供了关于数据库中的表的信息(包括视图)。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。是show tables;的结果取之此表。

主要字段:TABLE_NAME: 表名、TABLE_SCHEMA 表对应的库名

columns:---表---提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。

主要字段:COLUMN_NAME:列名、TABLE_NAME: 表名、TABLE_SCHEMA 表对应的库名

三张表的结构:

3.png

4.png

5.png

//查询库
information_schema:库 schemata:表 schema_name:列
//查询schemata表中所有数据

select * from information_schema.schemata;

6.png

//查询数据库中所有库名

select schema_name from information_schema.schemata;

show databases;命令就是执行的上面的语句

7.png

//查询表
以数据库名---messbd举例:
information_schema:库 tables:表 table_name、table_schema:列

//查询某个数据库(messbd)的所有表:

select table_name,table_schema from information_schema.tables where table_schema='messbd';

8.png

select table_name from information_schema.tables where table_schema='messbd';

9.png

//查询字段
以messbd库中有2个表:message、user举例
information_schema:库 columns:表 column_name、table_name、table_schema:列

select column_name,table_name,table_schema from information_schema.columns where table_schema='messbd' and table_name='user';

10.png

//查询某个数据库(messbd)某个表(user)中 的所有字段

 select column_name from information_schema.columns where table_schema='messbd' and table_name='user';

11.png

//查询数据
由以上可知,库名--messbd;表名---user;字段名--id、name、password:
//查询表里数据:

select id,name,password from messbd.user;

12.png

标签: none

添加新评论