1.0.342.sql 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. -- 1.0.342 P-022 WP-3:备份并清理派生层 tenant_id IN (0, 1300000000001) 残渣。
  2. -- 只清 dwd_*/mdp_std_* 指定表;不动业务表;不动 ado_s8_exception tenant_id=1。
  3. SET NAMES utf8mb4;
  4. SET @sql := IF(
  5. (SELECT COUNT(*) FROM information_schema.TABLES
  6. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_material_readiness_bak_20260814') = 0
  7. AND (SELECT COUNT(*) FROM information_schema.TABLES
  8. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_material_readiness') > 0,
  9. 'CREATE TABLE `dwd_material_readiness_bak_20260814` AS SELECT * FROM `dwd_material_readiness` WHERE tenant_id IN (0, 1300000000001)',
  10. 'SELECT 1');
  11. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  12. SET @sql := IF(
  13. (SELECT COUNT(*) FROM information_schema.TABLES
  14. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_material_shortage_bak_20260814') = 0
  15. AND (SELECT COUNT(*) FROM information_schema.TABLES
  16. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_material_shortage') > 0,
  17. 'CREATE TABLE `dwd_material_shortage_bak_20260814` AS SELECT * FROM `dwd_material_shortage` WHERE tenant_id IN (0, 1300000000001)',
  18. 'SELECT 1');
  19. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  20. SET @sql := IF(
  21. (SELECT COUNT(*) FROM information_schema.TABLES
  22. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_s4_purchase_execution_bak_20260814') = 0
  23. AND (SELECT COUNT(*) FROM information_schema.TABLES
  24. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_s4_purchase_execution') > 0,
  25. 'CREATE TABLE `dwd_s4_purchase_execution_bak_20260814` AS SELECT * FROM `dwd_s4_purchase_execution` WHERE tenant_id IN (0, 1300000000001)',
  26. 'SELECT 1');
  27. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  28. SET @sql := IF(
  29. (SELECT COUNT(*) FROM information_schema.TABLES
  30. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_supplier_risk_bak_20260814') = 0
  31. AND (SELECT COUNT(*) FROM information_schema.TABLES
  32. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='dwd_supplier_risk') > 0,
  33. 'CREATE TABLE `dwd_supplier_risk_bak_20260814` AS SELECT * FROM `dwd_supplier_risk` WHERE tenant_id IN (0, 1300000000001)',
  34. 'SELECT 1');
  35. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  36. SET @sql := IF(
  37. (SELECT COUNT(*) FROM information_schema.TABLES
  38. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_purchase_order_bak_20260814') = 0
  39. AND (SELECT COUNT(*) FROM information_schema.TABLES
  40. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_purchase_order') > 0,
  41. 'CREATE TABLE `mdp_std_purchase_order_bak_20260814` AS SELECT * FROM `mdp_std_purchase_order` WHERE tenant_id IN (0, 1300000000001)',
  42. 'SELECT 1');
  43. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  44. SET @sql := IF(
  45. (SELECT COUNT(*) FROM information_schema.TABLES
  46. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_purchase_receipt_bak_20260814') = 0
  47. AND (SELECT COUNT(*) FROM information_schema.TABLES
  48. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_purchase_receipt') > 0,
  49. 'CREATE TABLE `mdp_std_purchase_receipt_bak_20260814` AS SELECT * FROM `mdp_std_purchase_receipt` WHERE tenant_id IN (0, 1300000000001)',
  50. 'SELECT 1');
  51. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  52. SET @sql := IF(
  53. (SELECT COUNT(*) FROM information_schema.TABLES
  54. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_production_issue_bak_20260814') = 0
  55. AND (SELECT COUNT(*) FROM information_schema.TABLES
  56. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_production_issue') > 0,
  57. 'CREATE TABLE `mdp_std_production_issue_bak_20260814` AS SELECT * FROM `mdp_std_production_issue` WHERE tenant_id IN (0, 1300000000001)',
  58. 'SELECT 1');
  59. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  60. SET @sql := IF(
  61. (SELECT COUNT(*) FROM information_schema.TABLES
  62. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_s6_report_bak_20260814') = 0
  63. AND (SELECT COUNT(*) FROM information_schema.TABLES
  64. WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_std_s6_report') > 0,
  65. 'CREATE TABLE `mdp_std_s6_report_bak_20260814` AS SELECT * FROM `mdp_std_s6_report` WHERE tenant_id IN (0, 1300000000001)',
  66. 'SELECT 1');
  67. PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
  68. DELETE FROM `dwd_material_readiness` WHERE tenant_id IN (0, 1300000000001);
  69. DELETE FROM `dwd_material_shortage` WHERE tenant_id IN (0, 1300000000001);
  70. DELETE FROM `dwd_s4_purchase_execution` WHERE tenant_id IN (0, 1300000000001);
  71. DELETE FROM `dwd_supplier_risk` WHERE tenant_id IN (0, 1300000000001);
  72. DELETE FROM `mdp_std_purchase_order` WHERE tenant_id IN (0, 1300000000001);
  73. DELETE FROM `mdp_std_purchase_receipt` WHERE tenant_id IN (0, 1300000000001);
  74. DELETE FROM `mdp_std_production_issue` WHERE tenant_id IN (0, 1300000000001);
  75. DELETE FROM `mdp_std_s6_report` WHERE tenant_id IN (0, 1300000000001);