· 8 years ago · Nov 25, 2017, 05:10 PM
1ALTER TABLE creature CHANGE `guid` `guid` int(10) unsigned NOT NULL;
2ALTER TABLE creature AUTO_INCREMENT=1;
3ALTER TABLE creature ADD newguid INT UNSIGNED AUTO_INCREMENT, ADD INDEX(newguid);
4
5ALTER TABLE creature DROP PRIMARY KEY;
6
7DROP TABLE IF EXISTS creature_guids_backup;
8CREATE TABLE creature_guids_backup (
9 `guid` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Global Unique Identifier',
10 `newguid` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'New Global Unique Identifier',
11 PRIMARY KEY (`guid`)
12) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='GUIDs backup before and after reguid';
13
14INSERT INTO creature_guids_backup (SELECT guid, newguid FROM creature);
15
16ALTER TABLE creature_addon DROP PRIMARY KEY;
17UPDATE creature_addon ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
18ALTER TABLE creature_addon ADD PRIMARY KEY(guid);
19
20ALTER TABLE creature_archaeology_assign DROP PRIMARY KEY;
21UPDATE creature_archaeology_assign ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
22ALTER TABLE creature_archaeology_assign ADD PRIMARY KEY(guid);
23
24ALTER TABLE creature_formations DROP PRIMARY KEY;
25UPDATE creature_formations ca, creature cc SET ca.leaderguid=cc.newguid WHERE ca.leaderguid=cc.guid;
26UPDATE creature_formations ca, creature cc SET ca.memberguid=cc.newguid WHERE ca.memberguid=cc.guid;
27ALTER TABLE creature_formations ADD PRIMARY KEY(memberGUID);
28
29ALTER TABLE creature_linked_respawn DROP PRIMARY KEY;
30UPDATE creature_linked_respawn ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
31UPDATE creature_linked_respawn ca, creature cc SET ca.linkedguid=cc.newguid WHERE ca.linkedguid=cc.guid;
32ALTER TABLE creature_linked_respawn ADD PRIMARY KEY(guid);
33
34ALTER TABLE creature_transport DROP PRIMARY KEY;
35UPDATE creature_transport ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
36ALTER TABLE creature_transport ADD PRIMARY KEY(transport_entry,guid);
37
38ALTER TABLE game_event_creature DROP PRIMARY KEY;
39UPDATE game_event_creature ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
40ALTER TABLE game_event_creature ADD PRIMARY KEY(guid);
41
42ALTER TABLE game_event_model_equip DROP PRIMARY KEY;
43UPDATE game_event_model_equip ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
44ALTER TABLE game_event_model_equip ADD PRIMARY KEY(guid);
45
46ALTER TABLE game_event_npc_gossip DROP PRIMARY KEY;
47UPDATE game_event_npc_gossip ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
48ALTER TABLE game_event_npc_gossip ADD PRIMARY KEY(guid);
49
50ALTER TABLE game_event_npc_vendor DROP PRIMARY KEY;
51UPDATE game_event_npc_vendor ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
52ALTER TABLE game_event_npc_vendor ADD PRIMARY KEY(guid,item);
53
54ALTER TABLE game_event_npcflag DROP PRIMARY KEY;
55UPDATE game_event_npcflag ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
56ALTER TABLE game_event_npcflag ADD PRIMARY KEY(guid,event_id);
57
58ALTER TABLE npc_gossip DROP PRIMARY KEY;
59UPDATE npc_gossip ca, creature cc SET ca.npc_guid=cc.newguid WHERE ca.npc_guid=cc.guid;
60ALTER TABLE npc_gossip ADD PRIMARY KEY(npc_guid);
61
62ALTER TABLE pool_creature DROP PRIMARY KEY;
63UPDATE pool_creature ca, creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
64ALTER TABLE pool_creature ADD PRIMARY KEY(guid);
65
66
67
68ALTER TABLE cata_char.creature_respawn DROP PRIMARY KEY;
69UPDATE cata_char.creature_respawn ca, cata_world.creature cc SET ca.guid=cc.newguid WHERE ca.guid=cc.guid;
70ALTER TABLE cata_char.creature_respawn ADD PRIMARY KEY(guid,instance);
71
72
73UPDATE creature SET guid=newguid;
74
75ALTER TABLE creature ADD PRIMARY KEY(guid);
76
77ALTER TABLE creature DROP newguid;
78ALTER TABLE creature CHANGE `guid` `guid` int(10) unsigned NOT NULL AUTO_INCREMENT;