3_sp_data_migration_wcmchnldoc.sql 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. DROP PROCEDURE
  2. IF
  3. EXISTS sp_data_migration_wcmchnldoc;
  4. DELIMITER $$
  5. CREATE PROCEDURE sp_data_migration_wcmchnldoc (
  6. IN prevRecId BIGINT ( 20 ),
  7. IN recIdOffset BIGINT ( 20 ),
  8. IN docIdOffset BIGINT ( 20 ),
  9. IN siteIdOffset BIGINT ( 20 ),
  10. IN channelIdOffset BIGINT ( 20 ),
  11. IN docKindOffset BIGINT ( 20 )
  12. ) BEGIN
  13. DECLARE
  14. migr_table_name VARCHAR ( 255 ) DEFAULT 'wcmchnldoc';
  15. SELECT
  16. concat('开始迁移 ', migr_table_name) info;
  17. INSERT INTO trs_hycloud_iip.wcmchnldoc (
  18. CHNLID,
  19. DOCID,
  20. DOCORDER,
  21. DOCSTATUS,
  22. CRUSER,
  23. CRTIME,
  24. DOCPUBTIME,
  25. DOCPUBURL,
  26. RECID,
  27. DOCORDERPRI,
  28. INVALIDTIME,
  29. OPERUSER,
  30. OPERTIME,
  31. MODAL,
  32. DOCRELTIME,
  33. DOCCHANNEL,
  34. DOCFLAG,
  35. DOCKIND,
  36. SITEID,
  37. SRCSITEID,
  38. DOCFIRSTPUBTIME,
  39. NODEID,
  40. CRDEPT,
  41. DOCOUTUPID,
  42. DOCFORM,
  43. DOCLEVEL,
  44. attachpic,
  45. POSCHNLID,
  46. DocType,
  47. ISTIMINGPUBLISH,
  48. ACTIONTYPE,
  49. PUBSTATUS,
  50. GDORDER,
  51. DOCAUTHOR,
  52. ORIGINRECID,
  53. DOCSOURCENAME,
  54. TIMEDSTATUS,
  55. CANCELPUBTIME
  56. ) SELECT
  57. CHNLID + channelIdOffset,
  58. DOCID + docIdOffset,
  59. DOCORDER,
  60. DOCSTATUS,
  61. CRUSER,
  62. CRTIME,
  63. DOCPUBTIME,
  64. DOCPUBURL,
  65. RECID + recIdOffset,
  66. DOCORDERPRI,
  67. INVALIDTIME,
  68. OPERUSER,
  69. OPERTIME,
  70. MODAL,
  71. DOCRELTIME,
  72. DOCCHANNEL + channelIdOffset,
  73. DOCFLAG,
  74. DOCKIND + docKindOffset,
  75. SITEID + siteIdOffset,
  76. SRCSITEID,
  77. DOCFIRSTPUBTIME,
  78. NODEID,
  79. CRDEPT,
  80. DOCOUTUPID,
  81. DOCFORM,
  82. DOCLEVEL,
  83. attachpic,
  84. POSCHNLID,
  85. 20,
  86. 0,
  87. 0,
  88. 0,
  89. 0,
  90. NULL,
  91. 0,
  92. NULL,
  93. 0,
  94. NULL
  95. FROM
  96. wcmchnldoc
  97. WHERE
  98. CHNLID > 0
  99. AND SITEID > 0
  100. AND RECID > prevRecId
  101. ORDER BY
  102. RECID ASC;
  103. update trs_hycloud_iip.wcmchnldoc set PUBSTATUS = 1 where RECID > prevRecId and DOCSTATUS = 10;
  104. SET @maxRECID = IFNULL((SELECT MAX(recId) from wcmchnldoc), 0 );
  105. SET @log_sql = build_migration_log_sql ( migr_table_name, @maxRECID, now() );
  106. PREPARE stmt FROM @log_sql;
  107. EXECUTE stmt;
  108. DEALLOCATE PREPARE stmt;
  109. CALL setOffset ( migr_table_name, recIdOffset, prevRecId, @maxRECID );
  110. SELECT
  111. concat( '完成迁移 ', migr_table_name ) info;
  112. END $$
  113. DELIMITER;