按天分表按周分表

按天

drop procedure IF EXISTS news_user_receive_daytable;
CREATE procedure receive_daytable()
BEGIN
DECLARE i int;
SET i=0;
SET @dateStr = now();
SET @table1 = '创建表结构语句';
WHILE i < 600 DO
SET @sqlstr1 = CONCAT('CREATE table IF NOT EXISTS receive',date_format(DATE_SUB(@dateStr,INTERVAL -i DAY),'%Y%m%d'),@table1); 

prepare sqlstr1 from @sqlstr1;
execute sqlstr1;

SET i = i + 1;
END WHILE;
END;
call receive_daytable();
drop procedure IF EXISTSreceive_daytable;

按周

drop procedure IF EXISTS receive_daytable;
CREATE procedure receive_daytable()
BEGIN
DECLARE i int;
SET i= 1;
SET @dateStr = now();
SET @table1 = '';
WHILE i < 54 DO
SET @sqlstr1 = CONCAT('CREATE table IF NOT EXISTS receive',date_format(@dateStr,'%Y'),i,@table1); 

prepare sqlstr1 from @sqlstr1;
execute sqlstr1;

SET i = i + 1;
END WHILE;
END;
call receive_daytable();
drop procedure IF EXISTS receive_daytable;

修改字段属性

drop procedure IF EXISTS receive_daytable;
CREATE procedure receive_daytable()
BEGIN
DECLARE i int;
SET i = 8;
SET @dateStr = now();
SET @table1 = 'MODIFY COLUMN content longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT \'内容\' AFTER title;';
WHILE i < 54 DO
SET @sqlstr1 = CONCAT('ALTER TABLE receive',date_format(@dateStr,'%Y'),i,@table1); 

prepare sqlstr1 from @sqlstr1;
execute sqlstr1;

SET i = i + 1;
END WHILE;
END;
call receive_daytable();
drop procedure IF EXISTS receive_daytable;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值