心情一般般,不想解释,自己看代码有注释
SELECT COUNT(*) ttl, CONCAT(table_schema,"-Table") addr FROM information_schema.TABLES
WHERE table_schema = '数据库名字' -- 查询多少个表
UNION
SELECT COUNT(*) ttl, CONCAT(table_schema,"-Views") addr FROM information_schema.VIEWS
WHERE table_schema = '数据库名字' -- 查询多少个视图
UNION
SELECT COUNT(`name`) ttl ,CONCAT(db,"-Proc") addr FROM mysql.proc
WHERE `type` = 'PROCEDURE' AND db = '数据库名字' -- 查询多少个存储过程
UNION
SELECT COUNT(`name`) ttl ,CONCAT(db,"-Function") addr FROM mysql.proc
WHERE `type` = 'FUNCTION' AND db = '数据库名字' ; -- 查询多少个函数
下面是例子截图
1.这是我本地的一个mysql的数据库 叫dbapp
2.执行上面给出的的语句
3.下面是我得到的结果(如图我又14个表,一个视图,一个存储过程,一个函数)
PS:如果想查所有数据库里的数量,去掉每一个where 后面的数据库名字的条件