diff options
| author | Malcrom <malcromdev@gmail.com> | 2014-09-27 22:40:58 -0230 |
|---|---|---|
| committer | Malcrom <malcromdev@gmail.com> | 2014-09-27 22:40:58 -0230 |
| commit | 55b43c67519359f0e5a96004c393898b3c62add3 (patch) | |
| tree | 48191656156c1220f8d6b5939aae16de1782ac93 /sql | |
| parent | 1854eafcb609cf955d415ef8344ac54f0c4af703 (diff) | |
Core/LootMgr: Update lootMgr to normalize loot_template tables
Diffstat (limited to 'sql')
| -rw-r--r-- | sql/updates/world/2014_09_27_03_world.sql | 179 |
1 files changed, 179 insertions, 0 deletions
diff --git a/sql/updates/world/2014_09_27_03_world.sql b/sql/updates/world/2014_09_27_03_world.sql new file mode 100644 index 00000000000..d5fd075db3a --- /dev/null +++ b/sql/updates/world/2014_09_27_03_world.sql @@ -0,0 +1,179 @@ +-- Alter creature_loot_template "Cannot set item to 0 for reference entries. Will get primary key error" +ALTER TABLE `creature_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `creature_loot_template` DROP PRIMARY KEY; +ALTER TABLE `creature_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `creature_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `creature_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `creature_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `creature_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `creature_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `creature_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `creature_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `creature_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `creature_loot_template` DROP `mincountOrRef`; +ALTER TABLE `creature_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter disenchant_loot_template +ALTER TABLE `disenchant_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `disenchant_loot_template` DROP PRIMARY KEY; +ALTER TABLE `disenchant_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `disenchant_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `disenchant_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `disenchant_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `disenchant_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `disenchant_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `disenchant_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `disenchant_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `disenchant_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `disenchant_loot_template` DROP `mincountOrRef`; +ALTER TABLE `disenchant_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter fishing_loot_template +ALTER TABLE `fishing_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `fishing_loot_template` DROP PRIMARY KEY; +ALTER TABLE `fishing_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `fishing_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `fishing_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `fishing_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `fishing_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `fishing_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `fishing_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `fishing_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `fishing_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `fishing_loot_template` DROP `mincountOrRef`; +ALTER TABLE `fishing_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter gameobject_loot_template "Cannot set item to 0 for reference entries. Will get primary key error" +ALTER TABLE `gameobject_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `gameobject_loot_template` DROP PRIMARY KEY; +ALTER TABLE `gameobject_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `gameobject_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `gameobject_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `gameobject_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `gameobject_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `gameobject_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `gameobject_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `gameobject_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `gameobject_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `gameobject_loot_template` DROP `mincountOrRef`; +ALTER TABLE `gameobject_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter item_loot_template "Cannot set item to 0 for reference entries. Will get primary key error" +ALTER TABLE `item_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `item_loot_template` DROP PRIMARY KEY; +ALTER TABLE `item_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `item_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `item_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `item_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `item_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `item_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `item_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `item_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `item_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `item_loot_template` DROP `mincountOrRef`; +ALTER TABLE `item_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter mail_loot_template +ALTER TABLE `mail_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `mail_loot_template` DROP PRIMARY KEY; +ALTER TABLE `mail_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `mail_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `mail_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `mail_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `mail_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `mail_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `mail_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `mail_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `mail_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `mail_loot_template` DROP `mincountOrRef`; +ALTER TABLE `mail_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter milling_loot_template +ALTER TABLE `milling_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `milling_loot_template` DROP PRIMARY KEY; +ALTER TABLE `milling_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `milling_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `milling_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `milling_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `milling_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `milling_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `milling_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `milling_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `milling_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `milling_loot_template` DROP `mincountOrRef`; +ALTER TABLE `milling_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter pickpocketing_loot_template +ALTER TABLE `pickpocketing_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `pickpocketing_loot_template` DROP PRIMARY KEY; +ALTER TABLE `pickpocketing_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `pickpocketing_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `pickpocketing_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `pickpocketing_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `pickpocketing_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `pickpocketing_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `pickpocketing_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `pickpocketing_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `pickpocketing_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `pickpocketing_loot_template` DROP `mincountOrRef`; +ALTER TABLE `pickpocketing_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter prospecting_loot_template +ALTER TABLE `prospecting_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `prospecting_loot_template` DROP PRIMARY KEY; +ALTER TABLE `prospecting_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `prospecting_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `prospecting_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `prospecting_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `prospecting_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `prospecting_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `prospecting_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `prospecting_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `prospecting_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `prospecting_loot_template` DROP `mincountOrRef`; +ALTER TABLE `prospecting_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter reference_loot_template "Cannot set item to 0 for reference entries. Will get primary key error" +ALTER TABLE `reference_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `reference_loot_template` DROP PRIMARY KEY; +ALTER TABLE `reference_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `reference_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `reference_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `reference_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `reference_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `reference_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `reference_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `reference_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `reference_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `reference_loot_template` DROP `mincountOrRef`; +ALTER TABLE `reference_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter skinning_loot_template +ALTER TABLE `skinning_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `skinning_loot_template` DROP PRIMARY KEY; +ALTER TABLE `skinning_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `skinning_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `skinning_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `skinning_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `skinning_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `skinning_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `skinning_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `skinning_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `skinning_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `skinning_loot_template` DROP `mincountOrRef`; +ALTER TABLE `skinning_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; + +-- Alter spell_loot_template +ALTER TABLE `spell_loot_template` ADD COLUMN `reference` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0 AFTER `item`; +ALTER TABLE `spell_loot_template` DROP PRIMARY KEY; +ALTER TABLE `spell_loot_template` ADD PRIMARY KEY (`entry`,`item`,`reference`); +UPDATE `spell_loot_template` SET `reference` = `mincountOrRef` * -1 WHERE `mincountOrRef` < 0; +UPDATE `spell_loot_template` SET `mincountOrRef` = 1 WHERE `reference` > 0; +ALTER TABLE `spell_loot_template` ADD COLUMN `needsquest` BOOL NOT NULL DEFAULT 0 AFTER `ChanceOrQuestChance`; +UPDATE `spell_loot_template` SET `needsquest` = 1 WHERE `ChanceOrQuestChance` < 0; +UPDATE `spell_loot_template` SET `ChanceOrQuestChance` = ChanceOrQuestChance * -1 WHERE `ChanceOrQuestChance` < 0; +ALTER TABLE `spell_loot_template` CHANGE `ChanceOrQuestChance` `chance` FLOAT; +ALTER TABLE `spell_loot_template` ADD COLUMN `mincount` TINYINT(3) UNSIGNED NOT NULL DEFAULT 1 AFTER `mincountOrRef`; +UPDATE `spell_loot_template` SET `mincount` = `mincountOrRef`; +ALTER TABLE `spell_loot_template` DROP `mincountOrRef`; +ALTER TABLE `spell_loot_template` ADD COLUMN `comment` VARCHAR(255) AFTER `maxcount`; |
