aboutsummaryrefslogtreecommitdiff
path: root/sql/updates
diff options
context:
space:
mode:
authorSpp <none@none>2010-05-08 01:58:47 +0200
committerSpp <none@none>2010-05-08 01:58:47 +0200
commitd6df19cd9948ff6d108f88e0d8c77bdbda5922ab (patch)
treec5ebf7fc17c69aebad723a0190902f524a41fd2d /sql/updates
parent0d06050eb409c2b14dff199379ad89551bcdd93f (diff)
Add GUID to groups
--HG-- branch : trunk
Diffstat (limited to 'sql/updates')
-rw-r--r--sql/updates/8136_01_characters_groups.sql5
-rw-r--r--sql/updates/8136_02_characters_group_member.sql8
-rw-r--r--sql/updates/8136_03_characters_group_instance.sql8
3 files changed, 21 insertions, 0 deletions
diff --git a/sql/updates/8136_01_characters_groups.sql b/sql/updates/8136_01_characters_groups.sql
new file mode 100644
index 00000000000..af0f6cb736c
--- /dev/null
+++ b/sql/updates/8136_01_characters_groups.sql
@@ -0,0 +1,5 @@
+-- Create guid column and make it new pk
+ALTER TABLE `groups` ADD `guid` INT(11) NOT NULL FIRST;
+SET @a := 0;
+UPDATE `groups` SET `guid` = @a := @a+1;
+ALTER TABLE `groups` DROP PRIMARY KEY, ADD PRIMARY KEY (`guid`);
diff --git a/sql/updates/8136_02_characters_group_member.sql b/sql/updates/8136_02_characters_group_member.sql
new file mode 100644
index 00000000000..7300e34f2f9
--- /dev/null
+++ b/sql/updates/8136_02_characters_group_member.sql
@@ -0,0 +1,8 @@
+-- Create guid column
+ALTER TABLE `group_member` ADD `guid` INT(11) NOT NULL FIRST;
+-- populate column
+UPDATE `group_member` SET `guid`=(SELECT `groups`.`guid` FROM `groups` WHERE `leaderGuid`=`group_member`.`leaderGuid`);
+-- Remove index that will be same as pk
+ALTER TABLE `group_member` DROP INDEX `Idx_memberGuid` ;
+-- NOTE: if this one fails then u have a problem in your DB. Have a member in 2 groups, so fix it yourself and then re-run this one
+ALTER TABLE `group_member` DROP `leaderGuid`;
diff --git a/sql/updates/8136_03_characters_group_instance.sql b/sql/updates/8136_03_characters_group_instance.sql
new file mode 100644
index 00000000000..78601c14b98
--- /dev/null
+++ b/sql/updates/8136_03_characters_group_instance.sql
@@ -0,0 +1,8 @@
+-- Create guid column
+ALTER TABLE `group_instance` ADD `guid` INT(11) NOT NULL FIRST;
+-- populate column
+UPDATE `group_instance` SET `guid`=(SELECT `groups`.`guid` FROM `groups` WHERE `leaderGuid`=`group_instance`.`leaderGuid`);
+-- Update pk
+ALTER TABLE `group_instance` DROP PRIMARY KEY, ADD PRIMARY KEY (`guid`, `instance`);
+-- Remove unused column leaderguid
+ALTER TABLE `group_instance` DROP `leaderGuid`;