zoukankan      html  css  js  c++  java
  • MySql 分表复制表结构和数据脚本

    -- 以下是存储过程
    DELIMITER $$ 
    DROP PROCEDURE IF EXISTS `spliteOrder` $$ 
    CREATE PROCEDURE `spliteOrder` (IN startdate varchar(50),IN enddate varchar(50),IN tabname varchar(100)) 
    BEGIN
       
        
        set @repare_time = enddate;
         set @start_time = startdate;
         
         set @month = date_format(now(),'%Y%m');
         
         set @target_tname_crm_order                                 = tabname;
         
         -- 判断新表是否已存在,如果已存在,则删除已存在表
         set @sql_drop_table = concat('drop table if exists ',@target_tname_crm_order,'_',@month);
         prepare sql_drop_table from @sql_drop_table;
         execute sql_drop_table;
         
       -- 创建新表
    set @sql_create_table = concat('create table ',@target_tname_crm_order,'_',@month,' like ',@target_tname_crm_order); prepare sql_create_table from @sql_create_table; execute sql_create_table; -- 从老表往新表导入数据 set @sql_insert_table = concat('insert into ',@target_tname_crm_order,'_',@month,' select * from ',@target_tname_crm_order," where date_format(repair_time,'%Y-%m-%d')<","'",@repare_time,"'"); prepare sql_insert_table from @sql_insert_table; execute sql_insert_table; -- 插入迁移记录表 set @sql_insert_table = concat('insert into crm_data_splite(tabName,startDate,endDate,createDate) values(',"'",@target_tname_crm_order,'_',@month,"'",',',"'",@start_time,"'",',',"'",@repare_time,"'",',now())'); prepare sql_insert_table from @sql_insert_table; execute sql_insert_table; -- 删除当前业务表中被迁移的数据 set @sql_delete_table = concat('delete from ',@target_tname_crm_order," where date_format(repair_time,'%Y-%m-%d')<","'",@repare_time,"'"); prepare sql_delete_table from @sql_delete_table; execute sql_delete_table; END$$ DELIMITER $$;

    -- 执行存储过程

      call spliteOrder('2017-01-01','2017-08-01','crm_order');

     
  • 相关阅读:
    【hdu4057】 恨7不成妻
    【hdu3709】 Balanced Number
    【hdu3555】 Bomb
    【hdu2809】 不要62
    【bzoj3992】 SDOI2015—序列统计
    【uoj125】 NOI2013—书法家
    【bzoj1833】 ZJOI2010—count 数字计数
    【bzoj1026】 SCOI2009—windy数
    【bzoj2780】 Sevenk Love Oimaster
    【bzoj3930】 CQOI2015—选数
  • 原文地址:https://www.cnblogs.com/spplus/p/8033813.html
Copyright © 2011-2022 走看看