DELIMITER $$
CREATE PROCEDURE `create_xf_xfj_trade_records_Tables` (pram_year varchar(4))
BEGIN
DECLARE i INT ;
DECLARE table_name VARCHAR(27);
SET i = 1 ;
WHILE i <= 12 DO
IF i<10 THEN
SET table_name = CONCAT('trade_records_',pram_year,'0',i);
ELSE
SET table_name = CONCAT('trade_records_',pram_year,i);
END IF;
SET @qqq = CONCAT(
'CREATE TABLE IF NOT EXISTS ',table_name,'(
id char(32) DEFAULT NULL,
user_id int(8) NOT NULL COMMENT "用户ID",
card_number char(20) DEFAULT NULL COMMENT "卡号",
dev_id int(8) NOT NULL COMMENT "消费记录时为消费机id,充值记录时(卡尔充值机充值时,为充值操作人id)(卡尔空中充值方式,固定值-1)(能龙对接的充值记录,固定值-2)(翼支付充值记录,固定值-3)(第三方平台 用户Id-暂定)",
service_id int(4) NOT NULL COMMENT "1004消费充值,1005刷卡消费,1012余额转出,1013余额转入,1014消费退款,1018消费补款,1019消费平账,1020月包餐,1021学校收费,1022按次消费",
rec_time datetime NOT NULL COMMENT "刷卡时间",
checkstat tinyint(1) DEFAULT "0" COMMENT "消费状态:0=消费记录,1=正常消费,2=非正常消费,3=充值(卡尔充值机充值时取值0,卡尔空中充值、能龙对接方式取值3,才能在手机上显示),4确定未扣费.5异常记录,6记录缺失,7圈存充值未到卡,8()。",
money decimal(9,2) NOT NULL DEFAULT "0.00" COMMENT "原有金额",
consumption decimal(9,2) NOT NULL COMMENT "消费金额(合计)",
over decimal(9,2) NOT NULL COMMENT "消费后余额",
surplus_money decimal(9,2) DEFAULT "0.00" COMMENT "充值或消费后平台余额",
from_tag tinyint(2) DEFAULT NULL COMMENT "来源 1=卡尔充值机,2=卡尔无卡充值,3=卡尔空中充值,4=能龙平台,5=翼支付 6卡尔批量充值 7第三方平台",
way_tag tinyint(2) DEFAULT NULL COMMENT "方式1=微信,2=支付宝,3=网银,4=现金充值,5=翼支付充值",
order_code char(32) DEFAULT NULL COMMENT "订单Id",
add_time datetime NOT NULL COMMENT "创建时间",
serial_number int(8) DEFAULT NULL COMMENT "消费机自带流水号",
canbie_id tinyint(2) DEFAULT NULL COMMENT "餐别",
KEY `idx_rec_time` (`rec_time`) USING BTREE,
KEY `idx_user_id` (`user_id`) USING BTREE,
KEY `idx_dev_id` (`dev_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT="消费机交易记录表";'
) ; PREPARE create_stmt
FROM
@qqq ; EXECUTE create_stmt ;
SET i = i + 1 ;
END
WHILE ;
END $$
使用MySql存过批量建表
最新推荐文章于 2022-11-26 20:30:55 发布