MySQL 查询某个数据库中所有包含数据记录的表名 有时根据实际应用需要,需要对数据进行备份. 如果一个数据库中有很多数据表,但是只想备份包含数据记录的那些表数据(空表不做数据备份). 如果通过如下SQL,逐一确认表中是否有数据,效率会很低: ) from tableN; 如何直接获取某个数据库中,所有包含数据的表名呢? 查询SQL如下: select TABLE_NAME from information_schema.TABLES ;
SELECT TABLE_NAME,COLUMN_NAME,COLUMN_COMMENT FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_COMMENT LIKE '%条件%' AND table_name='表名' AND table_schema='数据库名'
select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),' MB') as data_size, concat(truncate(sum(index_length)/1024/1024,2),'MB') as index_size from information_schema.tables group by TABLE_SCHEMA order by data_length desc;
第一步:首先打开Mysql命令行,通过开始菜单-程序-MySql-Command line client,如图1-1所示: 图1-1 第二步:在命令中输入use information_schema 如图1-2所示: 图1-2 第三步:查看指定数据库的大小,输入如下语句: select concat(round(sum(DATA_LENGTH/1024/1024),2), 'MB') as data from TABLES where table_schema= 'offlineCollect
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'
查询数据库空间分配情况: use master go create procedure dbo.proc_getdbspaceused as begin set nocount on create table #dbsize( database_id int ,database_name ) ,size_kb bigint ,space_available_kb bigint ,reserved_kb bigint ,data_kb bigint ,index_kb bigint ,unused