From f9124921e7d6b79caa133bbef61012d3adcd954b Mon Sep 17 00:00:00 2001 From: oliver Date: Sun, 6 Mar 2016 11:47:22 +0100 Subject: [PATCH] update create script for last version of mysqldump --- db/create.sql | 212 +++++++++++++++++++++++++------------------------- 1 file changed, 106 insertions(+), 106 deletions(-) diff --git a/db/create.sql b/db/create.sql index a4a5544a..342287a2 100644 --- a/db/create.sql +++ b/db/create.sql @@ -273,7 +273,7 @@ CREATE TABLE `cache_charactergroups` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_cache_charactergroups_insert` AFTER INSERT ON cache_charactergroups @@ -292,7 +292,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_cache_charactergroups_update` AFTER UPDATE ON cache_charactergroups @@ -361,7 +361,7 @@ CREATE TABLE `charactergroups` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroups_insert` AFTER INSERT ON charactergroups @@ -457,7 +457,7 @@ CREATE TABLE `charactergroupsquests` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_update` AFTER UPDATE ON charactergroupsquests @@ -495,7 +495,7 @@ CREATE TABLE `charactergroupsquests_groups` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_insert` AFTER INSERT ON charactergroupsquests_groups @@ -514,7 +514,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_update` AFTER UPDATE ON charactergroupsquests_groups @@ -534,7 +534,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_charactergroupsquests_groups_delete` AFTER DELETE ON charactergroupsquests_groups @@ -680,7 +680,7 @@ CREATE TABLE `characters` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_insert` AFTER INSERT ON characters @@ -717,7 +717,7 @@ CREATE TABLE `characters_charactergroups` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_insert` AFTER INSERT ON characters_charactergroups @@ -736,7 +736,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_update` AFTER UPDATE ON characters_charactergroups @@ -756,7 +756,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_charactergroups_delete` AFTER DELETE ON characters_charactergroups @@ -1091,7 +1091,7 @@ CREATE TABLE `quests` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_update` AFTER UPDATE ON quests @@ -1131,7 +1131,7 @@ CREATE TABLE `quests_characters` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_insert` AFTER INSERT ON quests_characters @@ -1150,7 +1150,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_update` AFTER UPDATE ON quests_characters @@ -1170,7 +1170,7 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_quests_characters_delete` AFTER DELETE ON quests_characters @@ -2233,12 +2233,12 @@ CREATE TABLE `xplevels` ( /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_xplevels_insert` -AFTER INSERT ON xplevels -FOR EACH ROW BEGIN - CALL update_cache_characters_xplevels(NEW.seminary_id, NEW.xps, NULL); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_xplevels_insert` +AFTER INSERT ON xplevels +FOR EACH ROW BEGIN + CALL update_cache_characters_xplevels(NEW.seminary_id, NEW.xps, NULL); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2252,12 +2252,12 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_xplevels_update` -AFTER UPDATE ON xplevels -FOR EACH ROW BEGIN - CALL update_cache_characters_xplevels(NEW.seminary_id, OLD.xps, NEW.xps); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_xplevels_update` +AFTER UPDATE ON xplevels +FOR EACH ROW BEGIN + CALL update_cache_characters_xplevels(NEW.seminary_id, OLD.xps, NEW.xps); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2271,12 +2271,12 @@ DELIMITER ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_unicode_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; -/*!50003 SET sql_mode = '' */ ; +/*!50003 SET sql_mode = 'NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; -/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_xplevels_delete` -AFTER DELETE ON xplevels -FOR EACH ROW BEGIN - CALL update_cache_characters_xplevels(OLD.seminary_id, OLD.xps, NULL); +/*!50003 CREATE*/ /*!50017 DEFINER=`z`@`%`*/ /*!50003 TRIGGER `update_cache_characters_xplevels_delete` +AFTER DELETE ON xplevels +FOR EACH ROW BEGIN + CALL update_cache_characters_xplevels(OLD.seminary_id, OLD.xps, NULL); END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; @@ -2362,52 +2362,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; - - - 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(xplevels_sub.xps) - FROM xplevels AS xplevels_sub - WHERE xplevels_sub.seminary_id = charactertypes.seminary_id AND 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); +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(xplevels_sub.xps) + FROM xplevels AS xplevels_sub + WHERE xplevels_sub.seminary_id = charactertypes.seminary_id AND 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 */ ; @@ -2498,38 +2498,38 @@ DELIMITER ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; -CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters_xplevels`( - IN SEMINARYID INT(11), - IN XPS_LOWER INT(11), - IN XPS_UPPER INT(11) +CREATE DEFINER=`z`@`%` PROCEDURE `update_cache_characters_xplevels`( + IN SEMINARYID INT(11), + IN XPS_LOWER INT(11), + IN XPS_UPPER INT(11) ) -BEGIN - DECLARE CHARACTERID INT; - DECLARE done INT DEFAULT FALSE; - DECLARE characters_cursor CURSOR FOR - SELECT cache_characters.character_id - FROM charactertypes - INNER JOIN characters ON characters.charactertype_id = charactertypes.id - INNER JOIN cache_characters ON cache_characters.character_id = characters.id - WHERE charactertypes.seminary_id = SEMINARY_ID AND cache_characters.xps >= LEAST(XPS_LOWER, IFNULL(XPS_UPPER,XPS_LOWER)) AND (XPS_UPPER IS NULL OR cache_characters.xps <= GREATEST(XPS_LOWER, XPS_UPPER)); - DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; - - IF XPS_UPPER IS NULL THEN - SELECT MIN(xps) INTO XPS_UPPER - FROM xplevels - WHERE seminary_id = SEMINARYID AND xps > XPS_LOWER; - END IF; - - - 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 cache_characters.character_id + FROM charactertypes + INNER JOIN characters ON characters.charactertype_id = charactertypes.id + INNER JOIN cache_characters ON cache_characters.character_id = characters.id + WHERE charactertypes.seminary_id = SEMINARY_ID AND cache_characters.xps >= LEAST(XPS_LOWER, IFNULL(XPS_UPPER,XPS_LOWER)) AND (XPS_UPPER IS NULL OR cache_characters.xps <= GREATEST(XPS_LOWER, XPS_UPPER)); + DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; + + IF XPS_UPPER IS NULL THEN + SELECT MIN(xps) INTO XPS_UPPER + FROM xplevels + WHERE seminary_id = SEMINARYID AND xps > XPS_LOWER; + END IF; + + + 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 */ ;