您的位置:首页 > 移动开发

Data migration to generate the maximum value of the sequence between beta scheme and appbeta scheme

2017-10-13 22:15 645 查看

-- Change History:

-- @version <2> 09/27/17  JL Revisit the sequence merge. (Liu)

-- @version <1> 09/27/17  JL To generate the maximum value of the sequence between beta scheme and appbeta scheme . ( Liu)

DECLARE

  TYPE REC_SEQ IS VARRAY(2) OF VARCHAR2(32767);

  TYPE NNT_SEQ IS TABLE OF REC_SEQ;

  TYPE CACHE_TYPE_SEQ IS TABLE OF PLS_INTEGER INDEX BY VARCHAR2(30);

  L_CACHE_SEQ_7TH CACHE_TYPE_SEQ;

  TYPE TEMP_REC IS RECORD(

    L_SEQUENCE_NAME_7TH VARCHAR2(30),

    L_LAST_NUMBER_7TH   NUMBER);

  TYPE TEMP_CACHE IS TABLE OF TEMP_REC;

  L_NNT_SEQ_7TH TEMP_CACHE;

  -----ALL SEQUENCES IN RELEASE. AFTER.2016.12.09 -TD 2017 MAR - GA7.2.0.0 DUMP

  L_NNT_SEQ_TD NNT_SEQ := NNT_SEQ(REC_SEQ('ACCOUNT_DOOR_RELATION_ID_SEQ',

                                          '61'),

                                  REC_SEQ('ACCOUNT_ID_SEQ', '1002965'),

                                  REC_SEQ('ACCOUNT_SOLD_TO_ID_SEQ', '3668'),

                                  REC_SEQ('ACCOUNT_SOLD_TO_TYPE_ID_SEQ',

                                          '4212'),

                                  REC_SEQ('ACCOUNT_TYPE_ID_SEQ', '10140'),

                                  REC_SEQ('ADDRESS_ID_SEQ', '100878'),

                                  REC_SEQ('ASSORTMENT_HIST_ID_SEQ',

                                          '100173928'),

                                  REC_SEQ('ASSORTMENT_ID_SEQ', '50054140'),

                                  REC_SEQ('ASSORTMENT_ITEM_HIST_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('ASSORTMENT_SECTION_ID_SEQ',

                                          '10000'),

                                  REC_SEQ('ASST_DOOR_ASSIGNMENT_ID_SEQ',

                                          '100029156'),

                                  REC_SEQ('BODY_CLASSIFICATION_REF_ID_SEQ',

                                          '100820'),

                                  REC_SEQ('BULK_PO_ID_SEQ', '1000000'),

                                  REC_SEQ('BUYER_CLASSIFICATION_ID_SEQ',

                                          '1000'),

                                  REC_SEQ('BUYER_CLASS_MATCH_ID_SEQ',

                                          '100000'),

                                  REC_SEQ('BUYER_DEPT_ID_SEQ', '1120'),

                                  REC_SEQ('BUYER_GROUP_MATCH_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('BUYER_ORDER_NUMBER_SEQ',

                                          '1000000'),

                                  REC_SEQ('BUYER_PRODUCT_CATEGORY_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('BUYER_VENDOR_MIC_MATCH_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('BUYER_VENDOR_RELATION_ID_SEQ',

                                          '100918'),

                                  REC_SEQ('CALENDAR_EVENT_ID_SEQ', '10120'),

                                  REC_SEQ('CATEGORY_DETAIL1_ID_SEQ', '10120'),

                                  REC_SEQ('CATEGORY_DETAIL2_ID_SEQ', '10120'),

                                  REC_SEQ('CATEGORY_DETAIL_ID_SEQ', '1120'),

                                  REC_SEQ('CATEGORY_ID_SEQ', '1120'),

                                  REC_SEQ('CLIENT_JRE_IP_EXCEPTION_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('CLUSTERING_PARAMETER_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('CLUSTER_MATCH_ID_SEQ', '100120'),

                                  REC_SEQ('CLUSTER_SEQUENCE_ID_SEQ',

                                          '101101'),

                                  REC_SEQ('CLUSTER_SEQUENCE_ITEM_ID_SEQ',

                                          '1001074'),

                                  REC_SEQ('CMP_COMPANY_NOTES_ID_SEQ', '481'),

                                  REC_SEQ('CMP_NOTES_ID_SEQ', '192'),

                                  REC_SEQ('CM_PLAN_ID_SEQ', '1076'),

                                  REC_SEQ('CM_PLAN_INTEG_WARNING_ID_SEQ',

                                          '1'),

                                  REC_SEQ('CM_PLAN_LEVEL_ID_SEQ
ed8f
', '3219'),

                                  REC_SEQ('COLLECTION_COLORS_ID_SEQ',

                                          '1000000'),

                                  REC_SEQ('COLOR_CATEGORY_ID_SEQ', '1000'),

                                  REC_SEQ('COLOR_FAMILY_ID_SEQ', '100340'),

                                  REC_SEQ('COLOR_ID_SEQ', '1000'),

                                  REC_SEQ('COMPANY_ADDRESS_ID_SEQ', '100120'),

                                  REC_SEQ('COMPANY_BRAND_ID_SEQ', '1120'),

                                  REC_SEQ('COMPANY_DOOR_ID_SEQ', '107976'),

                                  REC_SEQ('COMPANY_DOOR_RET_REL_ID_SEQ', '1'),

                                  REC_SEQ('COMPANY_ID_SEQ', '100720'),

                                  REC_SEQ('COMPANY_MONTH_GROUP_ID_SEQ',

                                          '1220'),

                                  REC_SEQ('COMPANY_QUARTER_ID_SEQ', '1120'),

                                  REC_SEQ('COMPANY_SEASON_ID_SEQ', '1120'),

                                  REC_SEQ('COMPANY_SIZE_DIMENSION1_ID_SEQ',

                                          '101759'),

                                  REC_SEQ('COMPANY_SIZE_DIMENSION2_ID_SEQ',

                                          '10321'),

                                  REC_SEQ('COMPANY_SIZE_ID_SEQ', '103261'),

                                  REC_SEQ('CUSTOMIZED_BRAND_ID_SEQ', '1120'),

                                  REC_SEQ('CUSTOMIZED_SUMMARY_ID_SEQ',

                                          '100140'),

                                  REC_SEQ('CUSTOMIZED_SUM_ITEM_ID_SEQ',

                                          '100020'),

                                  REC_SEQ('DELIVERY_ID_SEQ', '1120'),

                                  REC_SEQ('DELIVERY_MONTH_ID_SEQ',

                                          '104891240'),

                                  REC_SEQ('DEMAND_CENTER_ID_SEQ', '1120'),

                                  REC_SEQ('DEPARTMENT_ID_SEQ', '1000'),

                                  REC_SEQ('DEPT_ID_SEQ', '302'),

                                  REC_SEQ('DESIGN_ID_SEQ', '10120'),

                                  REC_SEQ('DISCOUNT_ID_SEQ', '100320'),

                                  REC_SEQ('DOOR_ASSIGNMENT_ID_SEQ', '101175'),

                                  REC_SEQ('DOOR_ASSIGNMENT_ITEM_ID_SEQ',

                                          '10001733'),

                                  REC_SEQ('DOOR_ASSIGN_C_GROUP_ID_SEQ',

                                          '1001398'),

                                  REC_SEQ('EDI_MAILBOX_GROUP_ID_SEQ', '1'),

                                  REC_SEQ('FABRICATION_COLOR_ID_SEQ',

                                          '1000120'),

                                  REC_SEQ('FABRIC_BUY_ID_SEQ', '10120'),

                                  REC_SEQ('FABRIC_BUY_PATTERN_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('FABRIC_MATERIAL_ID_SEQ', '10120'),

                                  REC_SEQ('FILE_NAME_SEQ', '10028460'),

                                  REC_SEQ('FOB_ID_SEQ', '1120'),

                                  REC_SEQ('GROUP_ID_SEQ', '813'),

                                  REC_SEQ('ITEM_REQUEST_SEQ', '1000'),

                                  REC_SEQ('LOGICAL_WORKFLOW_ID_SEQ', '1545'),

                                  REC_SEQ('MACYS_CATE_DET_MATCH_ID_SEQ',

                                          '100000'),

                                  REC_SEQ('MACYS_CLASS_ID_SEQ', '1120'),

                                  REC_SEQ('MACYS_DESIGN_MATCH_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('MACYS_FAB_MATE_MATCH_ID_SEQ',

                                          '100000'),

                                  REC_SEQ('MESSAGE_ID_SEQ', '1000120'),

                                  REC_SEQ('MIC_ID_SEQ', '10120'),

                                  REC_SEQ('MP_INTEGRATION_CRITERIA_SEQ',

                                          '262887'),

                                  REC_SEQ('MP_INTEGRATION_SETUP_SEQ',

                                          '262627'),

                                  REC_SEQ('ORDER_FORM_CELL_ID_SEQ', '1120'),

                                  REC_SEQ('ORDER_FORM_ID_SEQ', '1120'),

                                  REC_SEQ('ORDER_FORM_ITEM_ID_SEQ', '1120'),

                                  REC_SEQ('ORDER_FORM_STORE_ID_SEQ', '1120'),

                                  REC_SEQ('ORDER_FORM_STYLE_ID_SEQ', '1120'),

                                  REC_SEQ('ORDER_ID_SEQ', '1000'),

                                  REC_SEQ('ORDER_WORKSHEET_HIST_ID_SEQ',

                                          '50172908'),

                                  REC_SEQ('ORDER_WORKSHEET_ID_SEQ',

                                          '20033422'),

                                  REC_SEQ('ORDER_WORKSHEET_ITEM_ID_SEQ',

                                          '302498980'),

                                  REC_SEQ('ORDER_WORKSHEET_PO_HIST_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('ORDER_WORKSHEET_PO_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('ORDER_WORKSHEET_SIZE_ID_SEQ',

                                          '100000000'),

                                  REC_SEQ('ORDER_WORKSHT_SIZE_HIST_ID_SEQ',

                                          '1000'),

                                  REC_SEQ('ORDER_WRKSHT_ITEM_HIST_ID_SEQ',

                                          '519981326'),

                                  REC_SEQ('ORDER_WS_ITEM_EXCEPT_ID_SEQ',

                                          '1000'),

                                  REC_SEQ('PATTERN_ID_SEQ', '100120'),

                                  REC_SEQ('PDF_FILE_SEQ', '100000'),

                                  REC_SEQ('PERSON_ID_SEQ', '103038'),

                                  REC_SEQ('PLANNING_STAGE_ID_SEQ', '1753'),

                                  REC_SEQ('PLANNING_YEAR_ID_SEQ', '161'),

                                  REC_SEQ('PLAN_ATTR_ID_SEQ', '2164'),

                                  REC_SEQ('PLAN_ATTR_RELATION_ID_SEQ', '281'),

                                  REC_SEQ('PLAN_NUMBER_BP_CLASS_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('PLAN_NUMBER_BP_CLUSTER_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('PLAN_NUMBER_CLASS_GROUP_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('PLAN_NUMBER_CLASS_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('PLAN_NUMBER_CLUSTER_ID_SEQ',

                                          '1000120'),

                                  REC_SEQ('PLAN_NUMBER_HINDSIGHT_ID_SEQ',

                                          '1000'),

                                  REC_SEQ('PLAN_NUMBER_HIND_OBJ_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('PLAN_NUMBER_ID_SEQ', '100140'),

                                  REC_SEQ('PLAN_NUMBER_ITEM_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('PLAN_NUMBER_SUBCLASS_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('PLAN_NUMBER_SUB_ID_SEQ', '10120'),

                                  REC_SEQ('PLAN_REPLEN_ID_SEQ', '100120'),

                                  REC_SEQ('PLAN_REPLEN_SM_ASST_ID_SEQ',

                                          '100000'),

                                  REC_SEQ('PLAN_REPLN_SEASON_MODEL_ID_SEQ',

                                          '10000'),

                                  REC_SEQ('PN_YEAR_CLUSTER_ID_SEQ', '100000'),

                                  REC_SEQ('POS_ID_SEQ', '1000'),

                                  REC_SEQ('POS_INSERT_SEQ', '1000'),

                                  REC_SEQ('POS_UPDATE_SEQ', '1000'),

                                  REC_SEQ('PO_ITEM_ID_SEQ', '10120'),

                                  REC_SEQ('PREPACK_ID_SEQ', '1120'),

                                  REC_SEQ('PREPACK_ITEM_ID_SEQ', '1120'),

                                  REC_SEQ('PREPACK_TEMPLATE_ID_SEQ', '10120'),

                                  REC_SEQ('PREPACK_TEMPLATE_ITEM_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('PRE_PO_ID_SEQ', '100000'),

                                  REC_SEQ('PRE_PO_ITEM_ID_SEQ', '10000120'),

                                  REC_SEQ('PRE_PO_PENDING_ID_SEQ', '100000'),

                                  REC_SEQ('PRODUCTION_TYPE_ID_SEQ', '62260'),

                                  REC_SEQ('PRODUCTIVE_DEFINATION_ID_SEQ',

                                          '121'),

                                  REC_SEQ('PRODUCT_CATEGORY_OVRRDE_ID_SEQ',

                                          '10000'),

                                  REC_SEQ('PROD_BUY_DATE_ID_SEQ', '10120'),

                                  REC_SEQ('PROD_BUY_DATE_ITEM_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('PROD_BUY_FILL_COLOR_ID_SEQ',

                                          '10160'),

                                  REC_SEQ('PROD_BUY_FILL_COLOR_KEY_ID_SEQ',

                                          '10120'),

                                  REC_SEQ('PROD_BUY_HIST_ID_SEQ', '1'),

                                  REC_SEQ('PROD_BUY_ID_SEQ', '10120'),

                                  REC_SEQ('PROMOTION_EVENT_ID_SEQ', '1120'),

                                  REC_SEQ('PROMOTION_EVENT_TASK_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('QUANTITY_BREAK_ID_SEQ', '10120'),

                                  REC_SEQ('RETAILER_ID_SEQ', '100120'),

                                  REC_SEQ('RETAILER_TYPE_ID_SEQ', '10160'),

                                  REC_SEQ('ROLE_ID_SEQ', '1120'),

                                  REC_SEQ('RPT_ADV_COL_ID_SEQ', '100200'),

                                  REC_SEQ('RPT_COL_ID_SEQ', '50360'),

                                  REC_SEQ('RPT_FILE_EXTRACT_INFO_SEQ', '20'),

                                  REC_SEQ('RPT_GROUP_ID_SEQ', '50380'),

                                  REC_SEQ('RPT_ID_SEQ', '102102'),

                                  REC_SEQ('RPT_SCHEDULE_ID_SEQ', '100120'),

                                  REC_SEQ('RPT_SORT_OPTION_ID_SEQ', '1120'),

                                  REC_SEQ('RPT_TYPE_ID_SEQ', '1120'),

                                  REC_SEQ('SEASON_ID_SEQ', '1141'),

                                  REC_SEQ('SEASON_STYLE_PLAN_ID_SEQ',

                                          '10000'),

                                  REC_SEQ('SHOWROOM_DISCOUNT_ID_SEQ', '1120'),

                                  REC_SEQ('SHOWROOM_ID_SEQ', '100120'),

                                  REC_SEQ('SHOWROOM_PAGE_ID_SEQ', '1000120'),

                                  REC_SEQ('SHOWROOM_PAGE_STYLE_REL_ID_SEQ',

                                          '1000120'),

                                  REC_SEQ('SIZE_DISTRO_ID_SEQ', '10120'),

                                  REC_SEQ('SIZE_DISTRO_ITEM_ID_SEQ', '10120'),

                                  REC_SEQ('SIZE_ID_SEQ', '1000'),

                                  REC_SEQ('SIZE_PACK_ID_SEQ', '1120'),

                                  REC_SEQ('SIZE_PACK_ITEM_ID_SEQ', '1120'),

                                  REC_SEQ('SIZE_RANGE_ID_SEQ', '10960'),

                                  REC_SEQ('SIZE_SCALE_BREAKDOWN_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('SIZE_SCALE_GROUP_ID_SEQ', '1120'),

                                  REC_SEQ('SIZE_SCALE_GROUP_ITEM_ID_SEQ',

                                          '1120'),

                                  REC_SEQ('SIZE_SCALE_ID_SEQ', '100120'),

                                  REC_SEQ('SIZE_SCALE_ITEM_ID_SEQ', '1120'),

                                  REC_SEQ('SIZE_SCALE_SECTION_ID_SEQ',

                                          '1000120'),

                                  REC_SEQ('SIZE_SCALE_SECTION_ITEM_ID_SEQ',

                                          '100000120'),

                                  REC_SEQ('STORE_TYPE_ID_SEQ', '2747'),

                                  REC_SEQ('STYLE_ADDITIONAL_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('STYLE_COLOR_ID_SEQ', '12075078'),

                                  REC_SEQ('STYLE_ID_SEQ', '10781360'),

                                  REC_SEQ('STYLE_SIZE_ID_SEQ', '13562541'),

                                  REC_SEQ('SUBCAT_ID_SEQ', '1000'),

                                  REC_SEQ('SUBCLUSTER_ID_SEQ', '1120'),

                                  REC_SEQ('SYSTEM_SQL_SCRIPTS_VER_ID_SEQ',

                                          '601'),

                                  REC_SEQ('TEMPLATE_ID_SEQ', '1120'),

                                  REC_SEQ('TEMP_RETAILER_ID_SEQ', '10120'),

                                  REC_SEQ('UPC_ID_SEQ', '108365532'),

                                  REC_SEQ('USER_ID_SEQ', '102979'),

                                  REC_SEQ('VENDOR_ORDER_NUMBER_SEQ', '1000'),

                                  REC_SEQ('VENDOR_STYLE_STATS_ID_SEQ',

                                          '100120'),

                                  REC_SEQ('WORKSHEET_CATEGORY_ID_SEQ',

                                          '10082040'),

                                  REC_SEQ('WS_LOCKING_CRITERIA_ID_SEQ',

                                          '1140'),

                                  REC_SEQ('WS_LOCK_CRITERIA_ITEM_ID_SEQ',

                                          '1160'),

                                  REC_SEQ('WS_SEASONAL_ASST_GRP_ID_SEQ',

                                          '1005913'),

                                  REC_SEQ('WS_SEASONAL_REGION_GRP_ID_SEQ',

                                          '100000'),

                                  REC_SEQ('WS_STYLE_CLR_SIZE_HIST_ID_SEQ',

                                          '1'));

BEGIN

  ----ALL SEQUENCES IN 7TH BETA

  SELECT SEQUENCE_NAME, LAST_NUMBER

    BULK COLLECT

    INTO L_NNT_SEQ_7TH

    FROM USER_SEQUENCES S;

  -----PUT ALL APPBETA SEQUENCES INTO DICTIONARY L_NNT_SEQ_APPBETA

  FOR I IN L_NNT_SEQ_7TH.FIRST .. L_NNT_SEQ_7TH.LAST LOOP

    L_CACHE_SEQ_7TH(L_NNT_SEQ_7TH(I).L_SEQUENCE_NAME_7TH) := L_NNT_SEQ_7TH(I)

                                                             .L_LAST_NUMBER_7TH;

  END LOOP;

  FOR I IN L_NNT_SEQ_TD.FIRST .. L_NNT_SEQ_TD.LAST LOOP

    -----CHECK IF 7TH SEQUENCE EXISTS IN ABOVE DICTIONARY L_NNT_SEQ_APPBETA

    -----CASE 1: IF 7TH SEQUENCE NOT EXISTS IN DICTIONARY L_NNT_SEQ_APPBETA,THEN CREATE NEW SEQUENCE

    IF NOT L_CACHE_SEQ_7TH.EXISTS(L_NNT_SEQ_TD(I) (1)) THEN

   

      EXECUTE IMMEDIATE 'CREATE SEQUENCE ' || L_NNT_SEQ_TD(I)

                        (1) || CHR(10) ||

                        'MAXVALUE 999999999999999999999999' || CHR(10) ||

                        'START WITH ' || TO_CHAR(TO_NUMBER(L_NNT_SEQ_TD(I) (2)) + 1) ||

                        CHR(10) || 'INCREMENT BY 1' || CHR(10) ||

                        'CACHE 20';

    ELSE

      -----CASE 2: IF 7TH SEQUENCE EXISTS IN DICTIONARY L_NNT_SEQ_APPBETA, THEN COMPARE LAST_NUMBER

      ------A: IF 7TH SEQUENCE IS LESS THAN TD SEQUENCE

      IF (L_CACHE_SEQ_7TH(L_NNT_SEQ_TD(I) (1)) < TO_NUMBER(L_NNT_SEQ_TD(I) (2))) THEN

        EXECUTE IMMEDIATE 'DROP SEQUENCE ' || L_NNT_SEQ_TD(I) (1);

        EXECUTE IMMEDIATE 'CREATE SEQUENCE ' || L_NNT_SEQ_TD(I)

                          (1) || CHR(10) ||

                          'MAXVALUE 999999999999999999999999' || CHR(10) ||

                          'START WITH ' || TO_CHAR(TO_NUMBER(L_NNT_SEQ_TD(I) (2)) + 1) ||

                          CHR(10) || 'INCREMENT BY 1' || CHR(10) ||

                          'CACHE 20';

      END IF;

    END IF;

  END LOOP;

END;

/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐