diff --git a/db/create.sql b/db/create.sql index c7b28338..b270e2b3 100644 --- a/db/create.sql +++ b/db/create.sql @@ -1,8 +1,8 @@ --- MySQL dump 10.15 Distrib 10.0.18-MariaDB, for Linux (x86_64) +-- MySQL dump 10.15 Distrib 10.0.21-MariaDB, for Linux (x86_64) -- -- Host: localhost Database: z -- ------------------------------------------------------ --- Server version 10.0.18-MariaDB-log +-- Server version 10.0.21-MariaDB-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; @@ -275,8 +275,10 @@ CREATE TABLE `cache_charactergroups` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_cache_charactergroups_insert` AFTER INSERT ON `cache_charactergroups` FOR EACH ROW BEGIN - CALL update_cache_characters_charactergroup(NEW.charactergroup_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_cache_charactergroups_insert` +AFTER INSERT ON cache_charactergroups +FOR EACH ROW BEGIN + CALL update_cache_characters_charactergroup(NEW.charactergroup_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -292,8 +294,10 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_cache_charactergroups_update` AFTER UPDATE ON `cache_charactergroups` FOR EACH ROW BEGIN - CALL update_cache_characters_charactergroup(NEW.charactergroup_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_cache_charactergroups_update` +AFTER UPDATE ON cache_charactergroups +FOR EACH ROW BEGIN + CALL update_cache_characters_charactergroup(NEW.charactergroup_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -359,8 +363,10 @@ CREATE TABLE `charactergroups` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroups_insert` AFTER INSERT ON `charactergroups` FOR EACH ROW BEGIN - CALL update_cache_charactergroups(NEW.id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroups_insert` +AFTER INSERT ON charactergroups +FOR EACH ROW BEGIN + CALL update_cache_charactergroups(NEW.id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -453,8 +459,10 @@ CREATE TABLE `charactergroupsquests` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_update` AFTER UPDATE ON `charactergroupsquests` FOR EACH ROW BEGIN - CALL update_cache_charactergroups_charactergroupsquest(NEW.id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_update` +AFTER UPDATE ON charactergroupsquests +FOR EACH ROW BEGIN + CALL update_cache_charactergroups_charactergroupsquest(NEW.id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -489,8 +497,10 @@ CREATE TABLE `charactergroupsquests_groups` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_insert` AFTER INSERT ON `charactergroupsquests_groups` FOR EACH ROW BEGIN - CALL update_cache_charactergroups(NEW.charactergroup_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_insert` +AFTER INSERT ON charactergroupsquests_groups +FOR EACH ROW BEGIN + CALL update_cache_charactergroups(NEW.charactergroup_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -506,9 +516,11 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_update` AFTER UPDATE ON `charactergroupsquests_groups` FOR EACH ROW BEGIN - CALL update_cache_charactergroups(OLD.charactergroup_id); - CALL update_cache_charactergroups(NEW.charactergroup_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_update` +AFTER UPDATE ON charactergroupsquests_groups +FOR EACH ROW BEGIN + CALL update_cache_charactergroups(OLD.charactergroup_id); + CALL update_cache_charactergroups(NEW.charactergroup_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -524,8 +536,10 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_delete` AFTER DELETE ON `charactergroupsquests_groups` FOR EACH ROW BEGIN - CALL update_cache_charactergroups(OLD.charactergroup_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_delete` +AFTER DELETE ON charactergroupsquests_groups +FOR EACH ROW BEGIN + CALL update_cache_charactergroups(OLD.charactergroup_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -601,8 +615,10 @@ CREATE TABLE `characters` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_insert` AFTER INSERT ON `characters` FOR EACH ROW BEGIN - CALL update_cache_characters(NEW.id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_insert` +AFTER INSERT ON characters +FOR EACH ROW BEGIN + CALL update_cache_characters(NEW.id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -636,8 +652,10 @@ CREATE TABLE `characters_charactergroups` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_insert` AFTER INSERT ON `characters_charactergroups` FOR EACH ROW BEGIN - CALL update_cache_characters(NEW.character_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_insert` +AFTER INSERT ON characters_charactergroups +FOR EACH ROW BEGIN + CALL update_cache_characters(NEW.character_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -653,9 +671,11 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_update` AFTER UPDATE ON `characters_charactergroups` FOR EACH ROW BEGIN - CALL update_cache_characters(OLD.character_id); - CALL update_cache_characters(NEW.character_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_update` +AFTER UPDATE ON characters_charactergroups +FOR EACH ROW BEGIN + CALL update_cache_characters(OLD.character_id); + CALL update_cache_characters(NEW.character_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -671,8 +691,10 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_delete` AFTER DELETE ON `characters_charactergroups` FOR EACH ROW BEGIN - CALL update_cache_characters(OLD.character_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_delete` +AFTER DELETE ON characters_charactergroups +FOR EACH ROW BEGIN + CALL update_cache_characters(OLD.character_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -981,8 +1003,10 @@ CREATE TABLE `quests` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_update` AFTER UPDATE ON `quests` FOR EACH ROW BEGIN - CALL update_cache_characters_quest(NEW.id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_update` +AFTER UPDATE ON quests +FOR EACH ROW BEGIN + CALL update_cache_characters_quest(NEW.id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -1019,8 +1043,10 @@ CREATE TABLE `quests_characters` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_insert` AFTER INSERT ON `quests_characters` FOR EACH ROW BEGIN - CALL update_cache_characters(NEW.character_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_insert` +AFTER INSERT ON quests_characters +FOR EACH ROW BEGIN + CALL update_cache_characters(NEW.character_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -1036,9 +1062,11 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_update` AFTER UPDATE ON `quests_characters` FOR EACH ROW BEGIN - CALL update_cache_characters(OLD.character_id); - CALL update_cache_characters(NEW.character_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_update` +AFTER UPDATE ON quests_characters +FOR EACH ROW BEGIN + CALL update_cache_characters(OLD.character_id); + CALL update_cache_characters(NEW.character_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -1054,8 +1082,10 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_delete` AFTER DELETE ON `quests_characters` FOR EACH ROW BEGIN - CALL update_cache_characters(OLD.character_id); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_delete` +AFTER DELETE ON quests_characters +FOR EACH ROW BEGIN + CALL update_cache_characters(OLD.character_id); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -1957,18 +1987,18 @@ CREATE TABLE `xplevels` ( /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_charactergroups`( - IN CHARACTERGROUPID INT(11) +CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_charactergroups`( + IN CHARACTERGROUPID INT(11) ) -BEGIN - /* XPs */ - REPLACE INTO cache_charactergroups - (charactergroup_id, xps) - SELECT charactergroups.id, IFNULL(SUM(ROUND(charactergroupsquests.xps * charactergroupsquests_groups.xps_factor)),0) AS xps - FROM charactergroups - LEFT JOIN charactergroupsquests_groups ON charactergroupsquests_groups.charactergroup_id = charactergroups.id - LEFT JOIN charactergroupsquests ON charactergroupsquests.id = charactergroupsquests_groups.charactergroupsquest_id - WHERE charactergroups.id = CHARACTERGROUPID; +BEGIN + + REPLACE INTO cache_charactergroups + (charactergroup_id, xps) + SELECT charactergroups.id, IFNULL(SUM(ROUND(charactergroupsquests.xps * charactergroupsquests_groups.xps_factor)),0) AS xps + FROM charactergroups + LEFT JOIN charactergroupsquests_groups ON charactergroupsquests_groups.charactergroup_id = charactergroups.id + LEFT JOIN charactergroupsquests ON charactergroupsquests.id = charactergroupsquests_groups.charactergroupsquest_id + WHERE charactergroups.id = CHARACTERGROUPID; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -1985,27 +2015,27 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_charactergroups_charactergroupsquest`( - IN CHARACTERGROUPSQUESTID INT(11) +CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_charactergroups_charactergroupsquest`( + IN CHARACTERGROUPSQUESTID INT(11) ) -BEGIN - DECLARE CHARACTERGROUPID INT; - DECLARE done INT DEFAULT FALSE; - DECLARE charactergroups_cursor CURSOR FOR - SELECT charactergroup_id - FROM charactergroupsquests_groups - WHERE charactergroupsquest_id = CHARACTERGROUPSQUESTID; - DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; - - SET done = 0; - OPEN charactergroups_cursor; - get_charactergroups: LOOP - FETCH charactergroups_cursor INTO CHARACTERGROUPID; - IF done = TRUE THEN - LEAVE get_charactergroups; - END IF; - CALL update_cache_charactergroups(CHARACTERGROUPID); - END LOOP get_charactergroups; +BEGIN + DECLARE CHARACTERGROUPID INT; + DECLARE done INT DEFAULT FALSE; + DECLARE charactergroups_cursor CURSOR FOR + SELECT charactergroup_id + FROM charactergroupsquests_groups + WHERE charactergroupsquest_id = CHARACTERGROUPSQUESTID; + DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; + + SET done = 0; + OPEN charactergroups_cursor; + get_charactergroups: LOOP + FETCH charactergroups_cursor INTO CHARACTERGROUPID; + IF done = TRUE THEN + LEAVE get_charactergroups; + END IF; + CALL update_cache_charactergroups(CHARACTERGROUPID); + END LOOP get_charactergroups; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2022,52 +2052,52 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters`( - IN CHARACTERID INT(11) +CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters`( + IN CHARACTERID INT(11) ) -BEGIN - DECLARE QUESTXPS INT UNSIGNED; - DECLARE GROUPSXPS INT UNSIGNED; - DECLARE TOTALXPS INT UNSIGNED; - DECLARE XPLEVELID INT; - DECLARE AVATARID INT; - - /* XPs */ - SELECT IFNULL(SUM(quests.xps),0) INTO QUESTXPS - FROM quests_characters - LEFT JOIN quests ON quests.id = quests_characters.quest_id - WHERE quests_characters.character_id = CHARACTERID AND quests_characters.status = 3; - SELECT IFNULL(SUM(cache_charactergroups.xps),0) INTO GROUPSXPS - FROM characters_charactergroups - LEFT JOIN cache_charactergroups ON cache_charactergroups.charactergroup_id = characters_charactergroups.charactergroup_id - WHERE characters_charactergroups.character_id = CHARACTERID; - SET TOTALXPS = QUESTXPS + GROUPSXPS; - - /* XP-level */ - SELECT ( - SELECT id - FROM xplevels - WHERE seminary_id = charactertypes.seminary_id AND xps = ( - SELECT MAX(xps) - FROM xplevels AS xplevels_sub - WHERE xps <= TOTALXPS - ) - ) INTO XPLEVELID - FROM characters - LEFT JOIN charactertypes ON charactertypes.id = characters.charactertype_id - WHERE characters.id = CHARACTERID; - - /* Avatar */ - SELECT avatars.id INTO AVATARID - FROM characters - LEFT JOIN avatars ON avatars.charactertype_id = characters.charactertype_id AND avatars.xplevel_id = XPLEVELID - WHERE characters.id = CHARACTERID; - - /* Set values */ - REPLACE INTO cache_characters - (character_id, xps, quest_xps, xplevel_id, avatar_id) - VALUES - (CHARACTERID, TOTALXPS, QUESTXPS, XPLEVELID, AVATARID); +BEGIN + DECLARE QUESTXPS INT UNSIGNED; + DECLARE GROUPSXPS INT UNSIGNED; + DECLARE TOTALXPS INT UNSIGNED; + DECLARE XPLEVELID INT; + DECLARE AVATARID INT; + + + SELECT IFNULL(SUM(quests.xps),0) INTO QUESTXPS + FROM quests_characters + LEFT JOIN quests ON quests.id = quests_characters.quest_id + WHERE quests_characters.character_id = CHARACTERID AND quests_characters.status = 3; + SELECT IFNULL(SUM(cache_charactergroups.xps),0) INTO GROUPSXPS + FROM characters_charactergroups + LEFT JOIN cache_charactergroups ON cache_charactergroups.charactergroup_id = characters_charactergroups.charactergroup_id + WHERE characters_charactergroups.character_id = CHARACTERID; + SET TOTALXPS = QUESTXPS + GROUPSXPS; + + + SELECT ( + SELECT id + FROM xplevels + WHERE seminary_id = charactertypes.seminary_id AND xps = ( + SELECT MAX(xps) + FROM xplevels AS xplevels_sub + WHERE xps <= TOTALXPS + ) + ) INTO XPLEVELID + FROM characters + LEFT JOIN charactertypes ON charactertypes.id = characters.charactertype_id + WHERE characters.id = CHARACTERID; + + + SELECT avatars.id INTO AVATARID + FROM characters + LEFT JOIN avatars ON avatars.charactertype_id = characters.charactertype_id AND avatars.xplevel_id = XPLEVELID + WHERE characters.id = CHARACTERID; + + + REPLACE INTO cache_characters + (character_id, xps, quest_xps, xplevel_id, avatar_id) + VALUES + (CHARACTERID, TOTALXPS, QUESTXPS, XPLEVELID, AVATARID); END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2084,27 +2114,27 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters_charactergroup`( - IN CHARACTERGROUPID INT(11) +CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters_charactergroup`( + IN CHARACTERGROUPID INT(11) ) -BEGIN - DECLARE CHARACTERID INT; - DECLARE done INT DEFAULT FALSE; - DECLARE characters_cursor CURSOR FOR - SELECT character_id - FROM characters_charactergroups - WHERE charactergroup_id = CHARACTERGROUPID; - DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; - - SET done = 0; - OPEN characters_cursor; - get_characters: LOOP - FETCH characters_cursor INTO CHARACTERID; - IF done = TRUE THEN - LEAVE get_characters; - END IF; - CALL update_cache_characters(CHARACTERID); - END LOOP get_characters; +BEGIN + DECLARE CHARACTERID INT; + DECLARE done INT DEFAULT FALSE; + DECLARE characters_cursor CURSOR FOR + SELECT character_id + FROM characters_charactergroups + WHERE charactergroup_id = CHARACTERGROUPID; + DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; + + SET done = 0; + OPEN characters_cursor; + get_characters: LOOP + FETCH characters_cursor INTO CHARACTERID; + IF done = TRUE THEN + LEAVE get_characters; + END IF; + CALL update_cache_characters(CHARACTERID); + END LOOP get_characters; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2121,27 +2151,27 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters_quest`( - IN QUESTID INT(11) +CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters_quest`( + IN QUESTID INT(11) ) -BEGIN - DECLARE CHARACTERID INT; - DECLARE done INT DEFAULT FALSE; - DECLARE characters_cursor CURSOR FOR - SELECT character_id - FROM quests_characters - WHERE quest_id = QUESTID AND status = 3; - DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; - - SET done = 0; - OPEN characters_cursor; - get_characters: LOOP - FETCH characters_cursor INTO CHARACTERID; - IF done = TRUE THEN - LEAVE get_characters; - END IF; - CALL update_cache_characters(CHARACTERID); - END LOOP get_characters; +BEGIN + DECLARE CHARACTERID INT; + DECLARE done INT DEFAULT FALSE; + DECLARE characters_cursor CURSOR FOR + SELECT character_id + FROM quests_characters + WHERE quest_id = QUESTID AND status = 3; + DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; + + SET done = 0; + OPEN characters_cursor; + get_characters: LOOP + FETCH characters_cursor INTO CHARACTERID; + IF done = TRUE THEN + LEAVE get_characters; + END IF; + CALL update_cache_characters(CHARACTERID); + END LOOP get_characters; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2158,4 +2188,4 @@ DELIMITER ; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2015-05-19 11:52:32 +-- Dump completed on 2015-08-19 21:42:23