mysql数据库计算全部女生_使用mysql存储过程-统计某个数据库下的所有表的记录数...

使用

mysql

存储过程

-

统计某个数据库下的所有表的记录数

其中用到了游标

(cursor)

,循环

(loop)

,动态

SQL

预处理

(prepare)

等技术,特

此记录一下。

[sql]

view

plain

copy

1.

CREATE

PROCEDURE

statis_rows(

in

v_schema

varchar

(50))

2.

BEGIN

3.

4.

5.

DECLARE

sql_str

VARCHAR

(200);

6.

declare

no_more_departments

integer

DEFAULT

0;

7.

8.

9.

DECLARE

sql_cur

CURSOR

FOR

(

10.

SELECT

11.

CONCAT(

12.

'select '

,

"'"

,table_schema,

"'"

,

",'"

,table_name,

"',"

,

'count(1)'

,

' into @v_tab_schema,@v_tab_name,@v_count  from '

,

13.

TABLE_SCHEMA,

14.

'.'

,

15.

TABLE_NAME,

16.

''

17.

)

18.

FROM

19.

information_schema.TABLES

20.

WHERE

table_schema = v_schema

21.

and

table_name <>

'table_rows'

22.

);

23.

DECLARE

CONTINUE

HANDLER

FOR

NOT

FOUND

SET

no_more_departments=1;

24.

25.

26.

/*

打开游标,进入循环统计各表的记录

*/

27.

OPEN

sql_cur;

28.

myLoop:LOOP

29.

fetch

sql_cur

into

sql_str;

30.

31.

32.

if no_more_departments = 1

THEN

33.

leave myLoop;

34.

end

if;

35.

36.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值