diff options
| author | linencloth <none@none> | 2010-12-26 04:16:18 +0100 |
|---|---|---|
| committer | linencloth <none@none> | 2010-12-26 04:16:18 +0100 |
| commit | b150172521636fa5646489688e53d03f0773b9be (patch) | |
| tree | b078947617c1deead6699123567e8beabdb2477b /sql/updates | |
| parent | 8fdbe7c4e69f5b0a8eb907aa76cc2afd2b297cd3 (diff) | |
Core/QuestStatus:
- Separate rewarded quests from active quests, and store them in a new table to reduce database size
- Drop the no longer needed `rewarded` column from character_queststatus for smaller table size
- Prevent filling the database with dropped quests
- Delete useless records
- Implement queststatus save "queues" instead of states
- Minor optimizations
WARNING: Backup your database!
--HG--
branch : trunk
Diffstat (limited to 'sql/updates')
| -rw-r--r-- | sql/updates/10828_characters_character_queststatus.sql | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sql/updates/10828_characters_character_queststatus.sql b/sql/updates/10828_characters_character_queststatus.sql new file mode 100644 index 00000000000..88681714a86 --- /dev/null +++ b/sql/updates/10828_characters_character_queststatus.sql @@ -0,0 +1,13 @@ +DELETE FROM character_queststatus WHERE `status` = 0; + +DROP TABLE IF EXISTS `character_queststatus_rewarded`; +CREATE TABLE `character_queststatus_rewarded` ( + `guid` int(10) unsigned NOT NULL default '0' COMMENT 'Global Unique Identifier', + `quest` int(10) unsigned NOT NULL default '0' COMMENT 'Quest Identifier', + PRIMARY KEY (`guid`,`quest`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Player System'; + +INSERT INTO character_queststatus_rewarded SELECT guid, quest FROM character_queststatus WHERE rewarded = 1; +DELETE FROM character_queststatus WHERE rewarded = 1; + +ALTER TABLE character_queststatus DROP COLUMN rewarded; |
