Core/DB: Fixed errors when importing a new DB

This commit is contained in:
hondacrx
2018-03-02 19:12:13 -05:00
parent 184115bf32
commit c5a041b6ed
5 changed files with 32 additions and 30 deletions
@@ -1,3 +0,0 @@
UPDATE `realmlist` SET `gamebuild`=25549 WHERE `gamebuild`=25480;
ALTER TABLE `realmlist` CHANGE `gamebuild` `gamebuild` int(10) unsigned NOT NULL DEFAULT '25549';
@@ -1,5 +1,5 @@
ALTER TABLE `account` CHANGE `sessionkey` `sessionkey` varchar(128) NOT NULL DEFAULT ''; ALTER TABLE `account` CHANGE `sessionkey` `sessionkey` varchar(128) NOT NULL DEFAULT '';
UPDATE `realmlist` SET `gamebuild`=25480 WHERE `gamebuild`=24742; UPDATE `realmlist` SET `gamebuild`=25549 WHERE `gamebuild`=24742;
ALTER TABLE `realmlist` CHANGE `gamebuild` `gamebuild` int(10) unsigned NOT NULL DEFAULT '25480'; ALTER TABLE `realmlist` CHANGE `gamebuild` `gamebuild` int(10) unsigned NOT NULL DEFAULT '25549';
@@ -1,3 +0,0 @@
ALTER TABLE `account`
DROP `v`,
DROP `s`;
@@ -313,4 +313,4 @@ ALTER TABLE `world_map_area` MODIFY `Flags` int(10) UNSIGNED NOT NULL DEFAULT '0
-- --
-- Table structure for table `world_map_transforms` -- Table structure for table `world_map_transforms`
-- --
ALTER TABLE `world_map_transforms` ADD `Priority` int(11) NOT NULL DEFAULT '0' AFTER `Flags`; ALTER TABLE `world_map_transforms` ADD `Priority` int(11) NOT NULL DEFAULT '0' AFTER `Flags`;
@@ -1,33 +1,41 @@
-- pretend the broken one doesnt exist -- pretend the broken one doesnt exist
DELETE FROM `updates` WHERE `name`='2018_02_08_00_world.sql'; DELETE FROM `updates` WHERE `name`='2018_02_08_00_world.sql';
ALTER TABLE `guild_rewards` DROP PROCEDURE IF EXISTS fixup_2018_02_08_00_world;
ADD `RaceMask_new` bigint(20) unsigned DEFAULT '0' AFTER `RaceMask`;
UPDATE `guild_rewards` SET `RaceMask_new`=`RaceMask` WHERE `RaceMask`>=0;
ALTER TABLE `guild_rewards` DELIMITER ';;'
DROP `RaceMask`, CREATE PROCEDURE fixup_2018_02_08_00_world() begin
CHANGE `RaceMask_new` `RaceMask` bigint(20) unsigned DEFAULT '0'; /* try to rerun a fixed version of the old update */
IF NOT EXISTS (SELECT * FROM `information_schema`.`columns` WHERE `table_schema`=SCHEMA() AND `table_name`='race_unlock_requirement' AND `column_name`='achievementId') THEN
ALTER TABLE `guild_rewards` ADD `RaceMask_new` bigint(20) unsigned DEFAULT '0' AFTER `RaceMask`;
UPDATE `guild_rewards` SET `RaceMask_new`=`RaceMask` WHERE `RaceMask`>=0;
ALTER TABLE `guild_rewards`
DROP `RaceMask`,
CHANGE `RaceMask_new` `RaceMask` bigint(20) unsigned DEFAULT '0';
ALTER TABLE `playerchoice` ALTER TABLE `playerchoice`
ADD `UiTextureKitId` int(11) NOT NULL DEFAULT '0' AFTER `ChoiceId`, ADD `UiTextureKitId` int(11) NOT NULL DEFAULT '0' AFTER `ChoiceId`,
ADD `HideWarboardHeader` tinyint(1) NOT NULL DEFAULT '0' AFTER `Question`; ADD `HideWarboardHeader` tinyint(1) NOT NULL DEFAULT '0' AFTER `Question`;
ALTER TABLE `quest_poi` ALTER TABLE `quest_poi` ADD `AlwaysAllowMergingBlobs` tinyint(1) unsigned NOT NULL DEFAULT '0' AFTER `WoDUnk1`;
ADD `AlwaysAllowMergingBlobs` tinyint(1) unsigned NOT NULL DEFAULT '0' AFTER `WoDUnk1`;
ALTER TABLE `quest_template` ALTER TABLE `quest_template`
ADD `MaxScalingLevel` int(11) NOT NULL DEFAULT '255' AFTER `QuestLevel`, ADD `MaxScalingLevel` int(11) NOT NULL DEFAULT '255' AFTER `QuestLevel`,
ADD `AllowableRaces_new` bigint(20) unsigned NOT NULL DEFAULT 0 AFTER `AllowableRaces`; ADD `AllowableRaces_new` bigint(20) unsigned NOT NULL DEFAULT 0 AFTER `AllowableRaces`;
UPDATE `quest_template` SET `AllowableRaces_new`=`AllowableRaces` WHERE `AllowableRaces`>=0; UPDATE `quest_template` SET `AllowableRaces_new`=`AllowableRaces` WHERE `AllowableRaces`>=0;
ALTER TABLE `quest_template`
DROP `AllowableRaces`,
CHANGE `AllowableRaces_new` `AllowableRaces` bigint(20) unsigned DEFAULT '0';
ALTER TABLE `quest_template` RENAME TABLE `race_expansion_requirement` TO `race_unlock_requirement`;
DROP `AllowableRaces`, ALTER TABLE `race_unlock_requirement` ADD `achievementId` int(10) unsigned NOT NULL DEFAULT '0';
CHANGE `AllowableRaces_new` `AllowableRaces` bigint(20) unsigned DEFAULT '0'; END IF;
END;;
RENAME TABLE `race_expansion_requirement` TO `race_unlock_requirement`; DELIMITER ';'
ALTER TABLE `race_unlock_requirement` CALL fixup_2018_02_08_00_world();
ADD `achievementId` int(10) unsigned NOT NULL DEFAULT '0';
DROP PROCEDURE IF EXISTS fixup_2018_02_08_00_world;
-- restore values broken by 2018_02_08_00_world if it did not cause an error during import -- restore values broken by 2018_02_08_00_world if it did not cause an error during import
UPDATE `guild_rewards` SET `RaceMask`=0xFFFFFFFF WHERE `ItemID` IN (62023,62024,62025,62026,62027,62029,63138,69209,69210,69888,85508,85509,85510,85666,89190,89191,89192,89193,89194,89195,116666); UPDATE `guild_rewards` SET `RaceMask`=0xFFFFFFFF WHERE `ItemID` IN (62023,62024,62025,62026,62027,62029,63138,69209,69210,69888,85508,85509,85510,85666,89190,89191,89192,89193,89194,89195,116666);