chore(DB): import pending SQL update file

Referenced commit(s): f4c226423d
This commit is contained in:
AzerothCoreBot
2021-04-25 20:19:35 +00:00
parent f4c226423d
commit 512fe7df0a
3 changed files with 53 additions and 3 deletions

View File

@@ -0,0 +1,54 @@
-- DB update 2021_03_28_00 -> 2021_04_25_00
DROP PROCEDURE IF EXISTS `updateDb`;
DELIMITER //
CREATE PROCEDURE updateDb ()
proc:BEGIN DECLARE OK VARCHAR(100) DEFAULT 'FALSE';
SELECT COUNT(*) INTO @COLEXISTS
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'version_db_characters' AND COLUMN_NAME = '2021_03_28_00';
IF @COLEXISTS = 0 THEN LEAVE proc; END IF;
START TRANSACTION;
ALTER TABLE version_db_characters CHANGE COLUMN 2021_03_28_00 2021_04_25_00 bit;
SELECT sql_rev INTO OK FROM version_db_characters WHERE sql_rev = '1617907126348389400'; IF OK <> 'FALSE' THEN LEAVE proc; END IF;
--
-- START UPDATING QUERIES
--
INSERT INTO `version_db_characters` (`sql_rev`) VALUES ('1617907126348389400');
-- Keep only the highest guid PvE or PvP (not bones) corpse per player guid
DELETE c FROM `corpse` c LEFT JOIN
(
SELECT MAX(`corpseGuid`) AS id
FROM `corpse`
WHERE `corpseType` IN (1,2)
GROUP BY `guid`
) corpsetemp
ON c.`corpseGuid` = corpsetemp.`id`
WHERE corpsetemp.`id` IS NULL;
-- Remove corpseGUID and set key to player guid
ALTER TABLE `corpse` DROP `corpseGuid`, DROP INDEX `idx_player`, ADD PRIMARY KEY (`guid`);
UPDATE `auctionhouse` SET `time` = 0, `auctioneerguid` = 7;
ALTER TABLE `auctionhouse` CHANGE `auctioneerguid` `houseid` TINYINT(3) UNSIGNED NOT NULL DEFAULT '7' AFTER `id`;
ALTER TABLE `characters` CHANGE `transguid` `transguid` MEDIUMINT DEFAULT 0 NOT NULL;
ALTER TABLE `groups` CHANGE `icon1` `icon1` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon2` `icon2` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon3` `icon3` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon4` `icon4` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon5` `icon5` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon6` `icon6` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon7` `icon7` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `groups` CHANGE `icon8` `icon8` BIGINT UNSIGNED NOT NULL;
--
-- END UPDATING QUERIES
--
COMMIT;
END //
DELIMITER ;
CALL updateDb();
DROP PROCEDURE IF EXISTS `updateDb`;