mysql 查看各表的行数

1. 查看各表的实际数据行数

drop procedure if exists count_table_rows;

create procedure count_table_rows()
begin
    declare s int default 0;
    declare my_table_name varchar(500);
    declare my_cur cursor for select TABLE_NAME
                              from information_schema.TABLES
                              where TABLE_SCHEMA = '数据库名'
    declare continue handler for not found set s = 1;

    drop table if exists table_counts;
    create table table_counts
    (
        table_name varchar(128) null comment '表名',
        count      varchar(128) null comment '表中记录数'
    ) comment '表记录统计存储表';

    open my_cur;
    while s <> 1
        do
            fetch my_cur into my_table_name;
            set @tmp_sql = concat('insert table_counts select \'',
                                  my_table_name,
                                  '\' as table_name, count(*) as count from ',
                                  my_table_name, ';');
            prepare stm from @tmp_sql;
            execute stm;
            deallocate prepare stm;
        end while;
    close my_cur;
end;

call count_table_rows;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值