Guest User

repair subscriptions

a guest
Apr 13th, 2021
240
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. DELIMITER $$
  2. DROP PROCEDURE IF EXISTS `repair_subscription` $$
  3. CREATE PROCEDURE `repair_subscription`()
  4. BEGIN
  5. DECLARE subscriptionId BIGINT DEFAULT NULL;
  6. DECLARE customerId varchar(20) DEFAULT NULL;
  7. DECLARE done TINYINT DEFAULT FALSE;
  8. DECLARE fixer
  9. CURSOR FOR
  10. SELECT p.ID, pmp.meta_value
  11. FROM wp_posts p
  12. LEFT OUTER JOIN wp_postmeta pms
  13. ON p.ID = pms.post_id AND pms.meta_key = "_mollie_customer_id"
  14. INNER JOIN wp_postmeta pmp
  15. ON p.post_parent = pmp.post_id AND pmp.meta_key = "_mollie_customer_id"
  16. WHERE
  17. p.post_type = "shop_subscription"
  18. AND pms.meta_value is NULL;
  19. DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
  20. OPEN fixer;
  21. fix_loop:
  22. LOOP
  23. FETCH NEXT FROM fixer INTO subscriptionId, customerId;
  24. IF done THEN
  25. LEAVE fix_loop;
  26. ELSE
  27. INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
  28. VALUES(subscriptionId, "_mollie_customer_id", customerId);
  29. END IF;
  30. END LOOP;
  31. CLOSE fixer;
  32. END $$
  33. DELIMITER ;
  34. CALL repair_subscription;
Advertisement
Add Comment
Please, Sign In to add comment