zoukankan      html  css  js  c++  java
  • 批量建表

    需求:分表时,需要批量建表

    # 第一步:创建存储过程
    CREATE PROCEDURE create_64_table(in val_s int, in val_e int)
    begin
    declare i int;
    set i=val_s;
    while i<=val_e do

    set @sql_create_table = concat(
    "CREATE TABLE IF NOT EXISTS xxx_task_", i,
    "(
    `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
    `player_id` int(11) DEFAULT '0' COMMENT '玩家id',
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='表';
    ");
    PREPARE sql_create_table FROM @sql_create_table;
    EXECUTE sql_create_table;

    set @sql_create_table = concat(
    "CREATE TABLE IF NOT EXISTS xxx_record_", i,
    "(
    `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='记录表'
    ");
    PREPARE sql_create_table FROM @sql_create_table;
    EXECUTE sql_create_table;

    set @sql_create_table = concat(
    "CREATE TABLE IF NOT EXISTS xxx_achievement_", i,
    "(
    `id` BIGINT(20) unsigned NOT NULL AUTO_INCREMENT,
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='配置';
    ");
    PREPARE sql_create_table FROM @sql_create_table;
    EXECUTE sql_create_table;

    set @sql_create_table = concat(
    "CREATE TABLE IF NOT EXISTS xxx_record_", i,
    "(
    `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='信息表';
    ");
    PREPARE sql_create_table FROM @sql_create_table;
    EXECUTE sql_create_table;
    set i=i+1;
    end while;
    end

    # 第二步:执行存储过程
    call create_64_table(0,63);

    # 第三步:删除存储过程
    DROP PROCEDURE IF EXISTS create_64_table

    最后的说明:某些版本对 ""  或  ‘’ 有严格要求,报错的话,注意字符串的拼接。

  • 相关阅读:
    俺自己可以写点代码了
    学姐,孙哥
    Linux/Unix 常用参数使用说明
    DB2 rollforward 命令使用详解
    DB2 create tablespace
    db2 基础语法
    VMWARE虚拟机不显示主机共享的文件夹解决办法
    DB2创建数据库常用参数详解
    从Linux访问Windows共享目录
    Data Flow >> Source >> Error Output >> Error & Truncation: Ignore Failure, Redirect Now, Fail Component
  • 原文地址:https://www.cnblogs.com/maohuidong/p/15048295.html
Copyright © 2011-2022 走看看