mysql存储过程动态创建表

创建几个相同结构的表,表名前缀相同,后缀是动态的数字

  • 动态删除表

DELIMITER $
DROP PROCEDURE
IF
	EXISTS `drop_order_info_1-12`;
CREATE PROCEDURE `drop_order_info_1-12` ( ) BEGIN
DECLARE
	i INT;

SET i = 1;
WHILE
	i <= 12 DO

SET @sql_drop_table = concat( 'drop table if exists order_info_', i );
PREPARE sql_drop_table 
FROM
	@sql_drop_table;
EXECUTE sql_drop_table;

SET i = i + 1;

END WHILE;

END $
DELIMITER ;
  • 动态创建表

DELIMITER $
DROP PROCEDURE
IF
	EXISTS `create_order_info_1-12`;
CREATE PROCEDURE `create_order_info_1-12` ( ) BEGIN
DECLARE
	i INT;

SET i = 1;
WHILE
	i <= 12 DO

SET @sql_create_table = concat( 'CREATE TABLE order_info_', i, '( id VARCHAR ( 64 ) PRIMARY KEY, business_time datetime, create_time datetime, order_no VARCHAR ( 20 ) );' );
PREPARE sql_create_table 
FROM
	@sql_create_table;
EXECUTE sql_create_table;

SET i = i + 1;

END WHILE;

END $
DELIMITER ;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值