首页 > 数据库 > mysql教程 > mysql批量增加表中新列存储过程_MySQL

mysql批量增加表中新列存储过程_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-01 13:02:42
原创
1318 人浏览过

一般访问量比较大的网站,请求日志表都是每天一张表独立创建. 业务需要为每张表都添加一个新列,纠结了半天,写了个存储过程如下:

日志表结构类型 tbl_ads_req_20140801, tbl_ads_req_20140802 ...

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

DELIMITER //

create procedure sp2()

 

begin

 

declare sTime varchar(32);

declare eTime varchar(32);

declare sName varchar(128);

declare lName varchar(128);

declare sqlVar varchar(128);

declare rest int;

 

set sTime = '20140801';

set eTime = '20140831';

set sName = CONCAT('tbl_ads_req_','');

set lName = '';

set rest = 1;

 

while rest > 0 do

   

 set sTime = (select DATE_FORMAT((select ADDDATE(sTime,1)),'%Y%m%d'));

 

 set lName = CONCAT(sName,sTime);

 

 set sqlVar=CONCAT(' alter table ',lName,' add app_package varchar(64)');

 

 set @v_s=sqlVar;

 

 prepare stmt from @v_s;

 

 EXECUTE stmt;

 

 set rest = DATEDIFF(eTime,sTime);

 

END while;

 

end;

 

//

DELIMITER;

登录后复制

涉及到一些mysql函数需要自己查哦!

相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
upupw创建网站过程
来自于 1970-01-01 08:00:00
0
0
0
mysql - php创建存储过程的问题
来自于 1970-01-01 08:00:00
0
0
0
调用SQL存储过程的方法:使用CreateNativeQuery
来自于 1970-01-01 08:00:00
0
0
0
请问这个教程是在哪一集讲到过class
来自于 1970-01-01 08:00:00
0
0
0
生命周期过程中的概念问题
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板