MySQL 查询 数据库有多少表 表名是哪些

本文介绍了如何使用SQL查询MySQL的information_schema数据库,以获取数据库、表及列的元数据信息,包括表的数量、表名、列信息、索引信息、权限信息等。同时,提供了查询特定数据库中以特定字符串开头的表的示例。

1.查询sjcenter数据库里开头为sj_demo和sj_onlyinv的所有表的总条数

select sum(table_rows) from (select table_name,table_rows from tables 
where TABLE_SCHEMA = 'sjcenter' 
order by table_rows desc) as b where b.table_name like 'sj_demo%' or b.table_name like 'sj_onlyinv'
 
2.查询wangdaisj数据库里以sj_demo为开头的所有表的表明
 
SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA ='wangdaisj' and table_name like 'sj_demo%'"


information_schema 表介绍

第一个查询看看库里有多少个表,表名等
select * from INFORMATION_SCHEMA.TABLES

information_schema这张数据表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。

再简单点,这台MySQL服务器上,到底有哪些数据库、各个数据库有哪些表,每张表的字段类型是什么,各个数据库要什么权限才能访问,等等信息都保存在information_schema表里面。

Mysql的INFORMATION_SCHEMA数据库包含了一些表和视图,提供了访问数据库元数据的方式。

元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。有些时候用于表述该信息的其他术语包括“数据词典”和“系统目录”。

 

下面对一些重要的数据字典表做一些说明:

SCHEMATA表:提供了关于数据库的信息。

TABLES表:给出了关于数据库中的表的信息。

COLUMNS表:给出了表中的列信息。

STATISTICS表:给出了关于表索引的信息。

USER_PRIVILEGES表:给出了关于全程权限的信息。该信息源自mysql.user授权表。

SCHEMA_PRIVILEGES表:给出了关于方案(数据库)权限的信息。该信息来自mysql.db授权表。

TABLE_PRIVILEGES表:给出了关于表权限的信息。该信息源自mysql.tables_priv授权表。

COLUMN_PRIVILEGES表:给出了关于列权限的信息。该信息源自mysql.columns_priv授权表。

CHARACTER_SETS表:提供了关于可用字符集的信息。

COLLATIONS表:提供了关于各字符集的对照信息。

COLLATION_CHARACTER_SET_APPLICABILITY表:指明了可用于校对的字符集。

TABLE_CONSTRAINTS表:描述了存在约束的表。

KEY_COLUMN_USAGE表:描述了具有约束的键列。

ROUTINES表:提供了关于存储子程序(存储程序和函数)的信息。此时,ROUTINES表不包含自定义函数(UDF)。

VIEWS表:给出了关于数据库中的视图的信息。

TRIGGERS表:提供了关于触发程序的信息。

转载于:https://www.cnblogs.com/wmxl/p/10134017.html

MySQL查询数据库通常涉及到两种情况: ### 1. 查询所有数据库 如果需要查看当前登录用户能够访问的所有数据库称,可以使用以下SQL查询命令: ```sql SHOW DATABASES; ``` 这会列出所有可用的数据库,对于拥有权限查看其他数据库的用户来说尤其有用。 ### 2. 查询特定数据库下的 为了获取特定数据库中的所有,首先需要确认当前所处的数据库环境。然后使用`SHOW TABLES;`命令进行查询。 例如,假设你需要查询为`example_db`的数据库中的所有,你需要先切换到该数据库: ```sql USE example_db; ``` 接着执行如下查询: ```sql SHOW TABLES; ``` 这个操作将返回该数据库下所有称列。 ### 相关问题 - MySQL查询示例: 1. **如何在MySQL中创建一个新的数据库?** 可以使用如下SQL命令创建新数据库: ```sql CREATE DATABASE new_database_name; ``` 2. **如何向MySQL数据库添加数据?** 使用INSERT INTO语句可以向中插入数据,例如: ```sql INSERT INTO table_name (column1, column2) VALUES ('value1', 'value2'); ``` 3. **如何从MySQL数据库删除记录?** 删除记录需要用到DELETE FROM语句,比如删除table_name中的所有记录: ```sql DELETE FROM table_name; ``` 以上就是关于MySQL查询数据库的基本步骤及一些常见操作的说明。在实际应用中,还需要注意权限管理、数据安全以及性能优化等方面的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值