首页 > 代码库 > 批量建立MySQL表
批量建立MySQL表
今天遇到MySQL的分表问题,可以采用脚本方式循环建立新的表,也可以使用sql建立。下面以建立player_0到player_9的语句为例。
delimiter //
CREATE procedure create_table()
BEGIN
DECLARE `@i` int(11);
DECLARE `@sqlstr` varchar(2560);
SET `@i`=0;
WHILE `@i` < 10 DO
SET @sqlstr = CONCAT(
"CREATE TABLE player_",
`@i`,
"(
`player_id` int(11) NOT NULL AUTO_INCREMENT,
`account_id` int(11) NOT NULL COMMENT ‘用户ID‘,
`personaname` varchar(50) NOT NULL COMMENT ‘昵称‘,
PRIMARY KEY (`player_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=‘用户表‘ AUTO_INCREMENT=1 "
);
prepare stmt from @sqlstr;
execute stmt;
SET `@i` = `@i` + 1;
END WHILE;
END;
call create_table();
drop procedure create_table;
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。