DB: Remove use of CREATE FUNCTION (requires SUPER privilege)
Closes #31822
This commit is contained in:
@@ -4093,7 +4093,7 @@ INSERT INTO `updates` VALUES
|
||||
('2026_02_06_00_characters.sql','90735F4481A137E79B8371F291008CF6051657AC','ARCHIVED','2026-02-06 12:45:48',0),
|
||||
('2026_03_21_00_characters.sql','87963F4E341B195D4B4C4514A3119092DF127431','RELEASED','2026-03-21 00:42:13',0),
|
||||
('2026_04_08_00_characters.sql','5A7FC8264EBD524E4EBAACF53D1CE89C6FF0D255','RELEASED','2026-04-07 10:24:16',0),
|
||||
('2026_04_22_00_characters.sql','7EA266122924A3F8940D1D2E62F7C1BBC1D10333','RELEASED','2026-04-22 19:26:05',0);
|
||||
('2026_04_22_00_characters.sql','34E7E4659F8C2FF778042CF21267F8045BDC197E','RELEASED','2026-04-22 19:26:05',0);
|
||||
/*!40000 ALTER TABLE `updates` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
|
||||
@@ -1,20 +1,16 @@
|
||||
DROP FUNCTION IF EXISTS `get_nth_token`;
|
||||
CREATE FUNCTION `get_nth_token`(x TEXT, delim VARCHAR(16), pos INT) RETURNS TEXT NO SQL
|
||||
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos), LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1), delim, '');
|
||||
|
||||
DELIMITER ;;
|
||||
CREATE PROCEDURE apply_if_not_exists_2026_04_22_00() BEGIN
|
||||
|
||||
-- Fill new situations
|
||||
DELETE FROM `character_transmog_outfit_situation` WHERE `situationID` BETWEEN 32 AND 41;
|
||||
IF NOT EXISTS (SELECT 1 FROM `character_transmog_outfit_situation` WHERE `situationID` BETWEEN 32 AND 41) THEN
|
||||
-- All Weather
|
||||
INSERT INTO `character_transmog_outfit_situation`
|
||||
SELECT `guid`, `transmogOutfitId`, 32, 0, 0, 0 FROM `character_transmog_outfit_situation` GROUP BY guid, transmogOutfitId;
|
||||
|
||||
-- All Weather
|
||||
INSERT INTO `character_transmog_outfit_situation`
|
||||
SELECT `guid`, `transmogOutfitId`, 32, 0, 0, 0 FROM `character_transmog_outfit_situation` GROUP BY guid, transmogOutfitId;
|
||||
|
||||
-- All Times
|
||||
INSERT INTO `character_transmog_outfit_situation`
|
||||
SELECT `guid`, `transmogOutfitId`, 37, 0, 0, 0 FROM `character_transmog_outfit_situation` GROUP BY guid, transmogOutfitId;
|
||||
-- All Times
|
||||
INSERT INTO `character_transmog_outfit_situation`
|
||||
SELECT `guid`, `transmogOutfitId`, 37, 0, 0, 0 FROM `character_transmog_outfit_situation` GROUP BY guid, transmogOutfitId;
|
||||
END IF;
|
||||
|
||||
IF NOT EXISTS (SELECT * FROM `information_schema`.`columns` WHERE `table_schema`=SCHEMA() AND `table_name`='character_transmog_outfit_slot' AND `column_name`='sheatheCategory') THEN
|
||||
ALTER TABLE `character_transmog_outfit_slot` ADD `sheatheCategory` tinyint UNSIGNED AFTER `slotOption`;
|
||||
@@ -186,25 +182,25 @@ CREATE PROCEDURE apply_if_not_exists_2026_04_22_00() BEGIN
|
||||
|
||||
INSERT INTO `character_select_screen_equipment_cache` SELECT guid,
|
||||
-- equipped item id | visible item id | subclass | inventory type | display id | enchant | secondary appearance | sheathe category
|
||||
/* head */ 0 , 0 , get_nth_token(`equipmentCache`,' ', 4) , get_nth_token(`equipmentCache`,' ', 1) , get_nth_token(`equipmentCache`,' ', 2) , get_nth_token(`equipmentCache`,' ', 3) , get_nth_token(`equipmentCache`,' ', 5) , 0,
|
||||
/* neck */ 0 , 0 , get_nth_token(`equipmentCache`,' ', 9) , get_nth_token(`equipmentCache`,' ', 6) , get_nth_token(`equipmentCache`,' ', 7) , get_nth_token(`equipmentCache`,' ', 8) , get_nth_token(`equipmentCache`,' ',10) , 0,
|
||||
/* shoulders */ 0 , 0 , get_nth_token(`equipmentCache`,' ',14) , get_nth_token(`equipmentCache`,' ',11) , get_nth_token(`equipmentCache`,' ',12) , get_nth_token(`equipmentCache`,' ',13) , get_nth_token(`equipmentCache`,' ',15) , 0,
|
||||
/* body */ 0 , 0 , get_nth_token(`equipmentCache`,' ',19) , get_nth_token(`equipmentCache`,' ',16) , get_nth_token(`equipmentCache`,' ',17) , get_nth_token(`equipmentCache`,' ',18) , get_nth_token(`equipmentCache`,' ',20) , 0,
|
||||
/* chest */ 0 , 0 , get_nth_token(`equipmentCache`,' ',24) , get_nth_token(`equipmentCache`,' ',21) , get_nth_token(`equipmentCache`,' ',22) , get_nth_token(`equipmentCache`,' ',23) , get_nth_token(`equipmentCache`,' ',25) , 0,
|
||||
/* waist */ 0 , 0 , get_nth_token(`equipmentCache`,' ',29) , get_nth_token(`equipmentCache`,' ',26) , get_nth_token(`equipmentCache`,' ',27) , get_nth_token(`equipmentCache`,' ',28) , get_nth_token(`equipmentCache`,' ',30) , 0,
|
||||
/* legs */ 0 , 0 , get_nth_token(`equipmentCache`,' ',34) , get_nth_token(`equipmentCache`,' ',31) , get_nth_token(`equipmentCache`,' ',32) , get_nth_token(`equipmentCache`,' ',33) , get_nth_token(`equipmentCache`,' ',35) , 0,
|
||||
/* feet */ 0 , 0 , get_nth_token(`equipmentCache`,' ',39) , get_nth_token(`equipmentCache`,' ',36) , get_nth_token(`equipmentCache`,' ',37) , get_nth_token(`equipmentCache`,' ',38) , get_nth_token(`equipmentCache`,' ',40) , 0,
|
||||
/* wrists */ 0 , 0 , get_nth_token(`equipmentCache`,' ',44) , get_nth_token(`equipmentCache`,' ',41) , get_nth_token(`equipmentCache`,' ',42) , get_nth_token(`equipmentCache`,' ',43) , get_nth_token(`equipmentCache`,' ',45) , 0,
|
||||
/* hands */ 0 , 0 , get_nth_token(`equipmentCache`,' ',49) , get_nth_token(`equipmentCache`,' ',46) , get_nth_token(`equipmentCache`,' ',47) , get_nth_token(`equipmentCache`,' ',48) , get_nth_token(`equipmentCache`,' ',50) , 0,
|
||||
/* finger */ 0 , 0 , get_nth_token(`equipmentCache`,' ',54) , get_nth_token(`equipmentCache`,' ',51) , get_nth_token(`equipmentCache`,' ',52) , get_nth_token(`equipmentCache`,' ',53) , get_nth_token(`equipmentCache`,' ',55) , 0,
|
||||
/* finger */ 0 , 0 , get_nth_token(`equipmentCache`,' ',59) , get_nth_token(`equipmentCache`,' ',56) , get_nth_token(`equipmentCache`,' ',57) , get_nth_token(`equipmentCache`,' ',58) , get_nth_token(`equipmentCache`,' ',60) , 0,
|
||||
/* trinket */ 0 , 0 , get_nth_token(`equipmentCache`,' ',64) , get_nth_token(`equipmentCache`,' ',61) , get_nth_token(`equipmentCache`,' ',62) , get_nth_token(`equipmentCache`,' ',63) , get_nth_token(`equipmentCache`,' ',65) , 0,
|
||||
/* trinket */ 0 , 0 , get_nth_token(`equipmentCache`,' ',69) , get_nth_token(`equipmentCache`,' ',66) , get_nth_token(`equipmentCache`,' ',67) , get_nth_token(`equipmentCache`,' ',68) , get_nth_token(`equipmentCache`,' ',70) , 0,
|
||||
/* back */ 0 , 0 , get_nth_token(`equipmentCache`,' ',74) , get_nth_token(`equipmentCache`,' ',71) , get_nth_token(`equipmentCache`,' ',72) , get_nth_token(`equipmentCache`,' ',73) , get_nth_token(`equipmentCache`,' ',75) , 0,
|
||||
/* main hand */ 0 , 0 , get_nth_token(`equipmentCache`,' ',79) , get_nth_token(`equipmentCache`,' ',76) , get_nth_token(`equipmentCache`,' ',77) , get_nth_token(`equipmentCache`,' ',78) , get_nth_token(`equipmentCache`,' ',80) , 0,
|
||||
/* off hand */ 0 , 0 , get_nth_token(`equipmentCache`,' ',84) , get_nth_token(`equipmentCache`,' ',81) , get_nth_token(`equipmentCache`,' ',82) , get_nth_token(`equipmentCache`,' ',83) , get_nth_token(`equipmentCache`,' ',85) , 0,
|
||||
/* ranged */ 0 , 0 , get_nth_token(`equipmentCache`,' ',89) , get_nth_token(`equipmentCache`,' ',86) , get_nth_token(`equipmentCache`,' ',87) , get_nth_token(`equipmentCache`,' ',88) , get_nth_token(`equipmentCache`,' ',90) , 0,
|
||||
/* tabard */ 0 , 0 , get_nth_token(`equipmentCache`,' ',94) , get_nth_token(`equipmentCache`,' ',91) , get_nth_token(`equipmentCache`,' ',92) , get_nth_token(`equipmentCache`,' ',93) , get_nth_token(`equipmentCache`,' ',95) , 0
|
||||
/* head */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 4),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 4 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 1),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 1 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 2),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 2 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 3),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 3 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 5),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 5 -1))+1),' ','') , 0,
|
||||
/* neck */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 9),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 9 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 6),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 6 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 7),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 7 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ', 8),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ', 8 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',10),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',10 -1))+1),' ','') , 0,
|
||||
/* shoulders */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',14),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',14 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',11),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',11 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',12),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',12 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',13),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',13 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',15),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',15 -1))+1),' ','') , 0,
|
||||
/* body */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',19),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',19 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',16),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',16 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',17),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',17 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',18),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',18 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',20),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',20 -1))+1),' ','') , 0,
|
||||
/* chest */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',24),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',24 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',21),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',21 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',22),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',22 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',23),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',23 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',25),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',25 -1))+1),' ','') , 0,
|
||||
/* waist */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',29),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',29 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',26),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',26 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',27),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',27 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',28),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',28 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',30),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',30 -1))+1),' ','') , 0,
|
||||
/* legs */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',34),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',34 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',31),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',31 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',32),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',32 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',33),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',33 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',35),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',35 -1))+1),' ','') , 0,
|
||||
/* feet */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',39),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',39 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',36),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',36 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',37),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',37 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',38),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',38 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',40),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',40 -1))+1),' ','') , 0,
|
||||
/* wrists */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',44),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',44 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',41),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',41 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',42),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',42 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',43),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',43 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',45),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',45 -1))+1),' ','') , 0,
|
||||
/* hands */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',49),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',49 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',46),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',46 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',47),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',47 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',48),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',48 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',50),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',50 -1))+1),' ','') , 0,
|
||||
/* finger */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',54),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',54 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',51),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',51 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',52),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',52 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',53),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',53 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',55),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',55 -1))+1),' ','') , 0,
|
||||
/* finger */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',59),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',59 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',56),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',56 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',57),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',57 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',58),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',58 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',60),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',60 -1))+1),' ','') , 0,
|
||||
/* trinket */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',64),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',64 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',61),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',61 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',62),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',62 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',63),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',63 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',65),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',65 -1))+1),' ','') , 0,
|
||||
/* trinket */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',69),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',69 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',66),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',66 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',67),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',67 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',68),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',68 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',70),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',70 -1))+1),' ','') , 0,
|
||||
/* back */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',74),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',74 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',71),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',71 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',72),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',72 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',73),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',73 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',75),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',75 -1))+1),' ','') , 0,
|
||||
/* main hand */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',79),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',79 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',76),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',76 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',77),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',77 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',78),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',78 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',80),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',80 -1))+1),' ','') , 0,
|
||||
/* off hand */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',84),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',84 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',81),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',81 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',82),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',82 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',83),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',83 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',85),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',85 -1))+1),' ','') , 0,
|
||||
/* ranged */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',89),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',89 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',86),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',86 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',87),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',87 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',88),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',88 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',90),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',90 -1))+1),' ','') , 0,
|
||||
/* tabard */ 0 , 0 , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',94),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',94 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',91),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',91 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',92),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',92 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',93),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',93 -1))+1),' ','') , REPLACE(SUBSTRING(SUBSTRING_INDEX(`equipmentCache`,' ',95),LENGTH(SUBSTRING_INDEX(`equipmentCache`,' ',95 -1))+1),' ','') , 0
|
||||
FROM `characters`;
|
||||
|
||||
ALTER TABLE `characters` DROP `equipmentCache`;
|
||||
@@ -216,5 +212,3 @@ DELIMITER ;
|
||||
CALL apply_if_not_exists_2026_04_22_00();
|
||||
|
||||
DROP PROCEDURE apply_if_not_exists_2026_04_22_00;
|
||||
|
||||
DROP FUNCTION `get_nth_token`;
|
||||
|
||||
Reference in New Issue
Block a user